Generative AI & LLMs
What Generative AI Development Services Actually Include
Written by Tehreem FatimaReviewed by Umaid Asim
Published 12 min read

Ask ten vendors what’s included in generative AI development services. Most describe the finished product: a custom chatbot, an internal copilot, a tool that drafts documents automatically. What they skip is the work that gets you there. That’s the gap where budgets get misjudged and timelines slip.
Generative AI development services span six phases. Scoping the use case comes first, then choosing between prompt engineering, retrieval-augmented generation, and fine-tuning. From there, teams build the application layer and connect the data pipeline. They evaluate the system before launch and govern it once it ships. This piece walks through each phase so you can judge a proposal against real technical work, not a marketing summary.
Discovery and Scoping: Deciding What’s Actually Worth Building
Before any model gets called, a competent engagement starts by narrowing the problem. This sounds obvious, but it’s the step most often skipped or rushed, and skipping it is the single biggest reason generative AI projects stall after a promising demo.
Scoping work includes:
- Use case selection. Picking one workflow with a clear, measurable outcome (fewer support tickets, faster document review, shorter time-to-first-draft) rather than a general “add AI to the product” mandate.
- Build-versus-buy analysis. Determining whether the problem needs a custom model pipeline at all, or whether an off-the-shelf tool, a prompt against an existing model, or a small integration already solves it. Anthropic’s own engineering guidance on agent design opens with this exact caution: start with the simplest solution that could work, and only add complexity, retrieval, multiple tool calls, autonomous agents, when a simpler approach measurably falls short.Source [1]
- Data access confirmation. Checking what source data actually exists, where it lives, who owns it, and whether it’s clean enough to use, before committing to a delivery date that assumes the data is ready.
- Success criteria. Defining, in writing, what “working” means for this specific use case, so the evaluation step later in the project has something concrete to measure against.
A generative AI development agency that skips this phase and jumps straight to a demo build is optimizing for a good first impression, not a system that survives contact with real users and real data.
Choosing the Technical Approach: Prompt Engineering, RAG, or Fine-Tuning
This is the decision that shapes everything downstream in generative AI model development, and it’s also where a lot of vendor material gets vague or overstates what any single technique can do. There are three broad levers, and a competent engagement usually combines more than one rather than defaulting to whichever technique the vendor happens to specialize in.
Prompt Engineering and Context Design
Adjusts what you tell the model at call time: instructions, examples, formatting rules. It’s the fastest and cheapest lever, and OpenAI’s own model optimization documentation treats it as the first thing to try before reaching for anything more expensive.Source [2]
Retrieval-Augmented Generation (RAG)
Grounds the model’s answers in your own data at query time, without retraining anything. The pattern has three moving parts: documents get converted into embeddings and stored in a vector index, an incoming query triggers a semantic search against that index to pull back the most relevant chunks, and those chunks are inserted into the prompt alongside the original question before the model generates a response.Source [3] This is the right approach when the problem is “the model doesn’t know our specific information” rather than “the model doesn’t know how to phrase things the way we need.”
Fine-Tuning
Adjusts the model’s underlying weights using a labeled dataset of example inputs and outputs, and it solves a different problem: it’s suited to cases like consistent formatting, classification, tone, or correcting a specific instruction-following failure, not to teaching the model new factual knowledge, which retrieval handles better.Source [4] It also carries real caveats worth knowing before a vendor sells it: OpenAI’s current guidance recommends establishing evaluations before fine-tuning even begins, specifically to determine whether the projected improvement justifies the cost, and the company has been winding down parts of its own fine-tuning platform in favor of other optimization paths.Source [4] A vendor who proposes fine-tuning as step one, before showing you why prompting and retrieval fall short, is skipping a step the model providers themselves recommend against skipping.

Whichever lever or combination a vendor proposes, get the specifics in writing, not just the approach. A proposal that skips the tradeoffs above, cost, latency, maintenance, is one worth questioning before you sign.

Building the Application Layer: Workflows Versus Agents
Once the grounding strategy is set, the next layer of work in genai application development services is deciding how the system moves through a task. Anthropic’s engineering team draws a specific, useful distinction here: a workflow orchestrates LLM calls and tools through a predefined code path that a developer designs in advance, while an agent lets the model dynamically direct its own process and tool use, deciding at runtime what to do next.Source [1]
Workflows suit tasks with a predictable structure: extract these three fields, classify into one of five categories, draft a response following this template. Agents suit open-ended problems where the number of steps can’t be predicted in advance, research tasks, multi-step troubleshooting, tasks where the model needs to adapt based on what it finds along the way.
The tradeoff is not free either way. Anthropic is explicit that agentic systems trade latency and cost for flexibility, and that the right call depends on measuring whether that tradeoff is actually justified for the task at hand, not on which pattern sounds more advanced.Source [1] Part of what a development engagement should deliver is that judgment call, made deliberately and explained, rather than defaulted to whichever architecture is easiest for the vendor to reuse from a previous client.
This layer is also where application logic that has nothing to do with the model itself gets built: input validation, error handling when a tool call fails, formatting the model’s output for the interface it needs to appear in, and defining what happens when the system isn’t confident enough to answer.
Data Pipeline and Grounding Infrastructure
If the chosen approach includes retrieval, a meaningful share of the actual engineering work sits here, not in the model call at all. This includes:
- Document processing. Chunking source documents into pieces small enough to retrieve precisely but large enough to preserve context, a tuning problem specific to each document type and use case.
- Embedding and indexing. Converting chunks into vector representations and loading them into a vector index or vector-capable database so that semantic search actually works, and keeping that index updated as source documents change.Source [3]
- Retrieval tuning. Adjusting how many chunks get retrieved, how they’re ranked, and whether a reranking step is needed to filter noisy matches before they reach the model.
- Access control. Making sure retrieval respects the same permissions the underlying documents already have, so the system doesn’t surface content a given user shouldn’t see.
For a deeper technical walkthrough of each of these steps, chunking strategies, embedding model selection, vector database options, and reranking, see our guide on RAG architecture and retrieval quality.
None of this is visible in a demo built on a handful of clean sample documents. It becomes visible, and expensive to retrofit, once real production data with real inconsistencies enters the system. A generative AI development services company that can describe this layer in specifics, not just “we use a vector database,” is one who has actually built it before.
Evaluation: Proving the System Works Before It Ships
Evaluation is the part of a generative AI engagement most often compressed to “we tested it and it looked good.” OpenAI’s own guidance on evaluation design treats this as a discipline with a defined structure, not a vibe check: an eval needs a data source that defines representative test cases with expected outcomes, and testing criteria that specify exactly how outputs get graded against those expectations.Source [5]
The practical process runs in a loop: define what correct output looks like for the task, run the system against a representative test set that includes both typical cases and known edge cases, review results in detail rather than as a pass rate, and use what’s found to refine the prompt, the retrieval configuration, or the underlying approach before repeating the cycle.Source [5] This is meant to happen before launch, so failures get caught on a test set instead of in front of a customer, and it’s meant to repeat after launch, every time the underlying model, prompt, or data changes, since a system that passed evaluation once can silently regress when any of those pieces shift.
A development engagement that can’t describe its evaluation approach in this level of detail, what the test set looks like, who wrote the grading criteria, how often it reruns, hasn’t actually built a way to know whether the system works. It’s built a way to feel confident about it, which is a different thing. For a comparison of the specific tools that support this process, see our piece on the best AI evaluation tools for production.
Governance, Risk, and Security Practices
This part of the work gets skipped most often on smaller engagements, and it’s the part that causes the most damage when it’s missing. NIST’s AI Risk Management Framework, developed through a public, consensus-driven process, organizes this work into four functions: governing how AI risk decisions get made inside an organization, mapping what risks a specific system actually poses, measuring those risks against defined criteria, and managing them through concrete mitigations.Source [6] NIST published a dedicated Generative AI Profile in 2024 specifically because generative systems introduce risks, like confabulated outputs presented with confidence, or unintended disclosure of information from training or retrieved data, that don’t map cleanly onto risk categories built for earlier AI systems.Source [6]
In a development engagement, this shows up as concrete deliverables: documented limits on what the system is and isn’t authorized to do autonomously, logging sufficient to reconstruct what the system did and why, a defined path for a human to review or override an output before it takes effect where the stakes warrant it, and a plan for what happens when the system produces something wrong or harmful, because it will, eventually, no matter how well it was built.
Deployment, Monitoring, and What Happens After Launch
A generative AI system is not a static piece of software once it ships. Model providers update and deprecate models, source data drifts, usage patterns change, and a system that worked well at launch can degrade without an obvious trigger. Ongoing work after deployment typically includes monitoring output quality against the same evaluation criteria used before launch, tracking cost and latency as usage scales, and re-running evaluations whenever the underlying model version changes, since providers regularly release new versions with different behavior even under the same model name.
This is also where the cost structure of a generative AI system becomes clearer than it was at the proposal stage. Development cost is a one-time figure; inference cost, the price of every model call in production, scales with usage and depends heavily on which technique was chosen upstream, prompt-only approaches are typically cheapest per call, RAG adds retrieval and indexing costs, and fine-tuning adds training cost on top of a call cost that may or may not be lower depending on the provider and model. A proposal that quotes only a development fee without discussing this ongoing cost structure is giving you half the number.

What a Generative AI Development Engagement Typically Does Not Include
To be equally direct about the other side: a development engagement is not usually the same thing as a broader digital transformation initiative, and a competent proposal should scope around this rather than blur it. It typically does not include rebuilding your underlying data infrastructure from scratch (though it should surface where that infrastructure is inadequate), open-ended research into problems with no defined use case, or an open-ended commitment to keep improving the system indefinitely without a separate ongoing agreement covering monitoring and iteration. Vague promises to include all of this inside a fixed initial quote are a reason to ask more questions, not a reason for confidence.
Frequently Asked Questions
Do Generative AI Development Services Always Require Fine-Tuning a Model?
No. Prompt engineering and retrieval-augmented generation solve most business use cases without touching model weights. Fine-tuning is suited to specific problems like formatting consistency or classification, and model providers recommend evaluating simpler approaches first, since fine-tuning adds training cost and complexity that isn’t always justified by the result.
What’s the Difference Between a Workflow and an Agent in a Generative AI System?
A workflow follows a fixed sequence of steps a developer defines in advance, suited to predictable tasks. An agent lets the model decide its own next steps at runtime, suited to open-ended problems where the number of steps can’t be predicted ahead of time, at the cost of higher latency and less predictability.
How Is a Generative AI System Evaluated Before It Launches?
Through a defined evaluation process: a representative test set with known correct outputs, explicit grading criteria, and a review of results in detail rather than a single pass rate. This should happen before launch and repeat after, since model or data changes can cause a previously working system to regress.
Where to Go from Here
If you’re evaluating proposals for generative AI development services, ask each vendor to walk through these phases specifically for your use case: how they’ll scope it, which technical approach they’re proposing and why, how they’ll evaluate it before it ships, and what governance and monitoring looks like after launch. A vendor who can answer all four in detail, rather than settling on “we’ll build you a custom AI solution,” is one who has actually done this work before. If you’re still at the stage of preparing for that first conversation, our piece on what businesses need before they build covers the internal readiness side of this same decision.
SensViz provides generative AI development services end to end, from scoping through evaluation and ongoing monitoring. Talk to us about your use case to see what a scoped proposal looks like for your specific problem.
Sources
- [1] Anthropic. Building Effective AI Agents (opens in a new tab)
- [2] OpenAI. Model optimization (opens in a new tab)
- [3] Databricks. What is Retrieval Augmented Generation (RAG)? (opens in a new tab)
- [4] OpenAI. Supervised fine-tuning (opens in a new tab)
- [5] OpenAI. Working with evals (opens in a new tab)
- [6] NIST. AI Risk Management Framework (opens in a new tab)




