Skip to content
24.09.2026

Choosing a large language model should not begin with the question, "Which model is the smartest?" For a company, the useful question is: What is the smallest, most predictable, and easiest-to-manage model that meets the requirements of a specific task?

A model that excels at programming may be unnecessarily expensive for classifying messages. A fast model may miss exceptions in a contract. A model that achieves high scores on international tests may produce unnatural Romanian or misinterpret local dates, amounts, and names.

This is why making the right choice is not a contest between providers. It is a procurement and engineering process: we define the task, the risk, and the budget, build a test set that reflects real work, compare the options, and monitor the outcome after launch.

The central idea: we are not looking for a single LLM for the entire company. We choose a model profile for each category of tasks and retain the ability to replace it.

What does the "right model" actually mean?

An LLM, short for "large language model," is a model trained to process and generate language. However, the application used by employees or customers contains more than the model: instructions, documents retrieved through RAG, tools, business rules, filters, approvals, and the user interface.

When evaluating a solution, we need to distinguish among three levels:

  1. The model, which receives the input and produces a response.
  2. The system, which adds data, tools, rules, and controls.
  3. The business process, in which a person or another system verifies and uses the result.

This distinction matters. A quality problem is not always solved by switching to a larger model. Sometimes the right documents are missing, the instructions are ambiguous, the data schema is weak, or the model has been allowed to make a decision that it should only have proposed.

Market snapshot as of September 25, 2026

Current commercial catalogs generally include several classes of models: frontier models for difficult tasks, balanced models for everyday use, compact models for high-volume workloads, and models specialized in code, voice, images, OCR, semantic search, or moderation. The official catalogs from OpenAI, Anthropic, Google, and Mistral AI illustrate this fragmentation.

This is a dated snapshot, not a ranking. Names, prices, limits, and availability change frequently. Provider documentation includes separate pages for deprecations and migrations, and catalogs already contain retired families and versions. A serious technical decision must include the exact identifier of the version tested, the evaluation date, and a migration procedure.

At the same time, "open-weight" and "open-source" are not synonymous. An open-weight model provides access to its learned parameters, but the license, training code, and information about the data may remain restrictive or incomplete. The Open Source AI Definition 1.0 requires the freedom to use, study, modify, and distribute the system, together with access to the preferred form for making modifications, including information about data, code, and parameters. For a company, the license must be reviewed separately from the availability of the model files.

Why public rankings are not enough

Public benchmarks are useful for creating a shortlist. However, they cannot determine on their own which model a company should purchase.

The paper HELM, Holistic Evaluation of Language Models shows why evaluation must use multiple scenarios and multiple dimensions, not only accuracy. Among other factors, HELM measures robustness, calibration, fairness, toxicity, and efficiency. NIST AI 600-1 warns that laboratory tests and benchmarks may not reflect the real-world context of use and recommends evaluating performance in practical scenarios.

A public score can be misleading for several reasons:

  • the test set may not include Romanian or the vocabulary of our domain;
  • the questions may resemble data used during training;
  • the score may measure general knowledge rather than compliance with an internal procedure;
  • models from the same family may respond differently to instructions, tools, and formats;
  • the average hides rare but costly errors;
  • the result may come from a different version than the one available through the API;
  • a model that performs well in conversation may be weak at JSON outputs, source citations, or tool calls.

For Romanian, internal testing is essential. The evaluation must include diacritics, names of people and places, Romanian date and number formats, lei and euros, forms of address, texts without diacritics, real typing errors, and company terminology.

Step 0: determine whether we need an LLM

LLMs are suitable when the input is ambiguous, primarily textual or visual, and the result requires interpretation, rewriting, or summarization. They are not the first choice for every automation.

A deterministic rule, a SQL query, a schema validator, or a traditional search engine is often cheaper and easier to verify for:

  • exact calculations;
  • validating a tax identification number, IBAN, or postal code;
  • applying a fixed pricing grid;
  • filtering by fields that are already structured;
  • permissions and approvals;
  • irreversible operations.

The LLM can interpret the request and propose an action, but business rules must validate the result before execution.

Step 1: define the task contract

Before testing models, we describe the task on a single page. Without this specification, the comparison becomes a collection of impressions.

The minimum specification should answer the following questions:

  • What is the input: text, documents, images, audio, or structured data?
  • What is the accepted output: free text, classification, JSON, code, or a tool call?
  • Which languages does the system use?
  • How much context does it receive for a typical request and for a difficult one?
  • What information must it not invent?
  • Which sources must it cite?
  • What is the maximum acceptable time to the first response and to the complete response?
  • What volume do we expect per hour and per month?
  • Which errors can be tolerated?
  • Which errors cause losses, contractual breaches, or harm to people?
  • Who approves the result, and what happens when the model is uncertain?

Example: "Classify the customer's message into one of 12 categories, extract the order number, and return valid JSON within two seconds. If the number is absent, return null. Do not reply to the customer."

This is a testable task. "Use AI for support" is not.

Step 2: establish the risk and mandatory constraints

Disqualifying criteria are checked before quality. If a provider cannot meet the data, licensing, or availability requirements, a better score does not make it suitable.

Data and privacy

We inventory the data that may enter the system:

  • public information;
  • internal documents;
  • trade secrets;
  • personal data;
  • special categories of personal data;
  • source code and credentials;
  • customer data subject to contractual obligations.

For managed services, we verify contractually and technically: whether data is used for training, the retention period, the processing region, subprocessors, the data processing agreement, deletion, logging, encryption, access control, and incident response. The purpose limitation and data minimization principles of the General Data Protection Regulation remain relevant regardless of a provider's popularity.

Local hosting can reduce exposure to an external API, but it does not eliminate risk. The company becomes responsible for configuration, updates, access, backups, vulnerabilities, and logs.

Licensing and usage rights

For downloadable models, we verify:

  • commercial use;
  • restrictions for certain domains or volumes;
  • attribution and redistribution obligations;
  • the licenses for the code, weights, and tokenizer;
  • conditions for derivative models;
  • compatibility with the company's legal policy.

"Available for free" does not automatically mean "free of cost" or "free of restrictions."

Operational continuity

We require answers regarding:

  • SLA and support;
  • rate limits and capacity;
  • pinnable versions, not only aliases such as "latest";
  • advance notice of model retirement;
  • a migration period;
  • export of logs and configurations;
  • a tested alternative model.

Step 3: choose the profile, not the brand

A healthy shortlist contains models from two or three classes, not ten nearly identical variants.

| Profile | Suitable for | Main trade-off |
| --- | --- | --- |
| Compact and fast | classification, simple extraction, repetitive responses, high volume | reaches its limits sooner with ambiguity and exceptions |
| Balanced generalist | internal support, drafting, summarization, RAG, tool calls | not optimal for every specialty |
| Advanced reasoning | multi-step analysis, difficult code, planning, and verification | higher cost and latency |
| Specialized | OCR, transcription, embeddings, code, moderation, or narrow domains | limited coverage outside its specialization |
| Internally hosted open-weight model | operational control, local processing, customization | infrastructure, maintenance, and in-house responsibility |
| Managed API | rapid launch, scaling, and access to new models | provider dependency and contractual terms |

These profiles are design categories, not claims that a specific model will succeed in a particular company. Confirmation comes from testing.

Step 4: build the internal evaluation set

For an SME pilot, an initial set of 50 to 200 carefully selected cases is generally more useful than thousands of generic questions. The exact size depends on the process's variability and risk.

A practical distribution could be:

  • 60% frequent and representative cases;
  • 20% difficult or ambiguous cases;
  • 10% incomplete, incorrect, or unusually formatted inputs;
  • 10% adversarial cases, including conflicting instructions and attempts to bypass the rules.

Where legally permitted, the set should be drawn from real work and anonymized. We keep a separate batch that we do not use to adjust the prompt. Otherwise, we optimize the system for the test and overestimate performance.

For each case, we define:

  • the correct result or acceptance criteria;
  • the severity of an error;
  • mandatory elements;
  • claims that must be supported by sources;
  • the situation in which the model must refuse or request information;
  • evaluation by a domain expert.

Step 5: measure what matters to the process

A single percentage is not enough. We track at least four groups of metrics.

1. Output quality

  • acceptance rate without edits;
  • factual and calculation accuracy;
  • completeness;
  • instruction compliance;
  • naturalness of Romanian;
  • rate of unsupported claims;
  • citation correctness;
  • validity of JSON or another schema;
  • tool-call success rate.

2. Risk

  • critical error rate;
  • data leaks or reproduction of unauthorized information;
  • resistance to prompt injection;
  • behavior when data is missing;
  • consistency of refusals;
  • maintenance of separation between customers and projects.

NIST includes confabulation, privacy, information security, and component integration among the risks relevant to generative AI. The document recommends pre-deployment testing, source verification, and continuous monitoring.

3. Operational performance

  • median latency, also known as p50;
  • p95 latency, below which 95% of requests fall;
  • time to first token;
  • error and timeout rates;
  • number of requests processed concurrently;
  • stability during peak hours.

The average can hide poor experiences. For an interactive assistant, p95 is often more important than the best demonstration.

4. Total cost

The cost of an API is not just the price per million tokens. A simplified monthly estimate is:

number of requests × average input and output cost + tools + storage + observability + human review + cost of errors

For self-hosting, we also add:

  • servers or GPU services;
  • energy and cooling;
  • redundancy and backups;
  • administration, updates, and monitoring;
  • engineering time;
  • licenses;
  • reserved but unused capacity;
  • the cost of downtime.

A more useful metric than "cost per token" is cost per accepted result. A cheap model that requires two retries and ten minutes of correction may cost more than one with a higher price.

A decision matrix for SMEs

Weights must be established before seeing the results. Otherwise, there is a temptation to change the rules to favor the preferred model.

Example for an internal assistant that answers from company procedures:

| Criterion | Weight | Disqualifying threshold |
| --- | ---: | --- |
| Accuracy on the internal set | 30% | no critical errors |
| Citation and use of sources | 15% | at least 95% valid citations |
| Romanian language | 10% | no operational ambiguities |
| Privacy and contract | 15% | all mandatory requirements |
| p95 latency | 10% | below the process limit |
| Cost per accepted result | 10% | within the approved budget |
| Integration and observability | 5% | identifiable logs and versions |
| Continuity and portability | 5% | documented alternative |

The values are an illustrative scenario, not a universal standard. For marketing copy generation, the weight assigned to style may increase. For invoice extraction, structural validity and field accuracy become dominant. For an agent that can initiate payments, the security, authorization, and human approval thresholds must be much stricter.

A context window is not memory or a guarantee of quality

The context window is the maximum amount of input and output that a model can process in a single request, usually measured in tokens. Tokens are fragments of text, not whole words.

A large window helps with long documents, but it does not prove that the model can find and correctly use every piece of information. The Lost in the Middle study observed performance degradation when relevant information appeared in the middle of a long context, even in models designed for extended context.

In practice, we test:

  • documents at 25%, 50%, 75%, and close to the stated limit;
  • key information placed at the beginning, middle, and end;
  • multiple documents containing conflicting versions;
  • questions that have no answer in the sources;
  • cost and latency at the actual context size.

RAG can select relevant passages before generation and reduce unnecessary context. However, it does not automatically fix incorrect documents, weak permissions, or an unsuitable search method.

One model or several?

For the first pilot, one default model and one backup model are easier to manage. Once measurements are available, the company can introduce routing.

Three common architectures are:

  1. Single model: simple to operate, but it may be too expensive for easy tasks and insufficient for difficult ones.
  2. Cascade: a compact model tries first, while uncertain cases are sent to a more capable model.
  3. Task-based routing: classification, OCR, writing, and analysis use different models.

The FrugalGPT and RouteLLM studies show that dynamic or cascade-based selection can improve the cost-quality tradeoff in the configurations they examined. These results do not guarantee the same savings in a local process. They support testing routing after we have an evaluation baseline and enough real requests.

A routing rule must be able to explain why it selected a model, enforce cost limits, and escalate when confidence is low. For important actions, the final escalation remains a human decision.

Four concrete selection examples

Classifying support messages

We start with a compact model. We ask it to choose labels from a closed list and return valid JSON. We measure accuracy by category, not only the overall average, because a rare category may be critical. If the confidence score is low or the message contains multiple intents, we escalate it.

Answering from company documents

We choose a general-purpose model that follows instructions and cites context reliably, connected to RAG. We test questions with no answer and conflicting documents. The model must say when the sources are insufficient instead of filling the gap with general knowledge.

Extracting data from invoices and contracts

We compare a multimodal model or specialized OCR with a combination of traditional OCR and a language model. We validate every field using deterministic rules: totals, currency, tax identification number (CUI), VAT, and dates. Low-confidence fields are sent for human review.

Analyzing and modifying code

We use automated tests, static analysis, and review, not merely a developer's preference for a response. We measure the share of tasks solved, regressions, vulnerabilities introduced, total time, and cost. Access to the shell, repository, and production must be separated through permissions and approvals.

These are design scenarios. The winning model may differ for each company and even for two similar processes within the same organization.

The 14-day pilot

A focused pilot can follow this schedule:

Days 1 and 2: the task contract

We define the expected result, users, data, risks, volume, budget, and acceptance thresholds.

Days 3 to 5: the test set

We collect and anonymize cases, add exceptions, and establish the reference evaluation with the process experts.

Days 6 and 7: controlled comparison

We run the same inputs, instructions, and tools on the shortlisted models. We fix the version and parameters. Where possible, evaluators should not know which model produced each response.

Days 8 to 10: shadow mode

The system receives copies of real requests, but its outputs have no effect. We compare them with human decisions and look for errors that did not appear in the initial set.

Days 11 to 14: limited launch

A small group uses the system with human approval. We establish budgets, alerts, rapid shutdown procedures, and an incident channel.

At the end, the decision is not limited to "launch" or "do not launch." We can launch for safe categories, retain review for exceptions, and postpone high-risk functions.

What we document before production

The record for a model used by the company should contain:

  • the provider, family, and exact version identifier;
  • the test date;
  • the configuration, prompt, and tools;
  • the evaluation set and results;
  • permitted and prohibited data;
  • the estimated cost and limits;
  • the internal owner;
  • the backup model;
  • the shutdown criteria;
  • the date of the next reevaluation.

We reevaluate when the model, prompt, RAG sources, tools, or process change. We monitor the acceptance rate, corrections, incidents, latency, consumption, and distribution of request types. A model may remain unchanged while the data and user behavior evolve.

Common mistakes

  • Choosing exclusively on the basis of a leaderboard.
  • Using the most expensive model for every request.
  • Testing only in English.
  • Confusing the context window with reliable memory.
  • Treating an open-weight model as free and open source.
  • Comparing the price per token without including the cost of human review.
  • Using the "latest" alias in production without regression testing.
  • Granting access to tools before testing plain responses.
  • Automating a decision when the model should only prepare a recommendation.
  • Having no migration plan or backup model.
  • Retaining sensitive data in logs after it has been removed from the interface.
  • Optimizing the prompt on the same cases used for the final evaluation.

Conclusion

The right model is not the one that impresses in a demonstration, but the one that consistently produces acceptable results under the company's conditions, language requirements, budget, and risk limits.

For most SMEs, the realistic strategy is:

  1. define a narrow task;
  2. eliminate options that do not meet mandatory requirements;
  3. test two or three model profiles on real cases;
  4. measure the cost per accepted result;
  5. launch with approval and monitoring;
  6. maintain a replacement path.

Choosing an LLM is reversible only if the application, data, and evaluations have been designed for portability. Without them, changing a model name can become a new project.

Would you like us to select and test the right models for your company's processes, using clear criteria for cost, quality, and risk? Talk to us about an audit or a controlled pilot.

Sources and further reading

Recommended for you

De unde începem: șapte procese potrivite pentru agenți AI într-un IMM

Permissions, Approvals, and Auditing: The Rules of a Trustworthy AI Agent

Prompt Injection and Personal Data: How to Use AI Agents Safely