Engineering
Co-published with CloudflareIs this car connectable?
A specialized, edge-hosted LLM for connectivity eligibility
By Linkbycar Engineering, with Cloudflare
English · Français
Before any connected-vehicle service can run, we have to answer one deceptively hard question first: is this specific vehicle actually eligible for connectivity? At Linkbycar we answer it many times a day, with a small, specialized language model that runs entirely on Cloudflare's network. Here is how it works, and why we built it this way.
Eligibility is a moving target
Connectivity eligibility is not a single fact. It is the intersection of many: make, model, trim, model year, market, the generation of embedded hardware, the telematics protocol, and whether a carrier supports it in that country. Every manufacturer publishes this differently, in different formats and different vocabulary, and revises it every time a new variant ships. A car that is connectable in one market may not be in another. A mid-cycle refresh can swap the hardware generation without changing the model name.
Why hand-written rules don't scale
The obvious approach is a rules engine: a decision tree over all those attributes. We built one. It works until it doesn't. Each manufacturer, market and model year adds branches. The tree grows into thousands of brittle conditions that only a handful of people understand. Every new variant is a code change and a deploy. The maintenance cost grows faster than the coverage.
Our approach: a small, specialized model
Instead of encoding the rules by hand, we let a model learn them. We built a language model specialized on one task: decide connectivity eligibility from heterogeneous manufacturer data. Two design choices carry the whole system.
First, it is specialized, not general. We did not reach for a large general-purpose model. We took an open-weight base model and fine-tuned it with a LoRA adapter on our own eligibility corpus. The result is small and focused. It does one thing, and does it well.
Second, it is self-hosted on Cloudflare. The model runs on Cloudflare Workers AI: serverless GPU inference that executes at the edge, close to the request. Cloudflare's AI Router sits in front of it. The Router is a single control point. It routes between the specialized model and fallbacks, and it lets us manage cost, latency and model version without touching application code.
The data pipeline
A specialized model is only as good as the corpus behind it. We normalize manufacturer feeds into one consistent representation of a vehicle and its eligibility outcome. That normalized corpus is what we fine-tune on. When a manufacturer changes how it describes a variant, we extend the corpus and retrain the adapter. We do not rewrite a decision tree.
This is the part we care about most. The model stays inside Cloudflare's network. We never send data to a third-party LLM provider. Because the base model is open-weight and the adapter is ours, the whole inference path is under our control and inside one perimeter. Privacy is not a promise in a contract. It is a property of where the compute runs.
Why it matters
Privacy by architecture
The model is open-weight, with our own adapter, self-hosted on Cloudflare. We never call a third-party LLM. The data does not leave the perimeter.
Ultra-fast at the edge
The model is small and specialized. It runs close to the request. It is fast enough to sit in the hot path of every eligibility check.
Cost-controlled
Inference is serverless. Routing sits in front. There is no idle GPU fleet to pay for.
Resilient to change
When a manufacturer ships a new variant, we retrain an adapter. We do not rewrite a rules engine.
Why specialized beats general here
A large general model can answer eligibility questions too. It is also slower, more expensive per call, and harder to keep inside a data boundary. For a decision that sits in the hot path of every connected-service request, latency and cost compound fast. A small model, trained on our own data, is fast enough to run inline, cheap enough to run at volume, and small enough to host where our data has to stay. The trade-off is scope: it does one job. That is exactly what we want.
Early results
Early production signals are encouraging. The specialized model matches our previous rules engine on known cases, and generalizes to variants the rules never covered, at a latency that keeps it inline. Precise latency and cost figures will follow once the pilot stabilizes, and we will update this post with measured numbers.
What's next
We are widening the corpus across more manufacturers and markets, and using the AI Router to test new adapter versions safely behind the same endpoint. The longer-term goal is to apply the same pattern to other vehicle- intelligence decisions that today live in brittle rules.
Scope
This post is about connectivity eligibility. It deliberately keeps raw vehicle identifiers out of the model.
Co-published
This post is published together with Cloudflare. It describes a system built on Cloudflare Workers AI and the AI Router, running open-weight models that Linkbycar hosts and fine-tunes.
Book a demo
See Linkbycar running in thirty minutes
Send us your plates or VINs. We come back vehicle by vehicle: which ones are compatible with manufacturer data, which ones need a box, and what data each one returns.
Thirty minutes with our team
We show you the platform live and answer your questions. Send us your plates and we tell you what each vehicle can report.
Nothing to fit on compatible vehicles
Compatible vehicles are activated remotely.* No workshop visit, no fitting, and no vehicle off the road.
No commitment
You keep the vehicle-by-vehicle answer whether or not you go further with us.
* Activation time depends on the manufacturer and can take up to 48 hours.
Request received.
We come back to you within 48 hours to set up the demo. Send us your plates or VINs and we tell you what each vehicle can report. If it is urgent, reply to the confirmation email and a person reads it.