# LLM integration tutorials and evaluation methods

Start with a minimal request, then validate protocol behavior, completion and task quality. These guides explain integration and evaluation methods; they are not model rankings or promises of performance, pricing or availability. Generation examples incur usage: confirm access and budget before running them.

## 1. [Your first LLM API request](/docs/llm/first-request)

Discover a compatible model, send a server-side Chat Completions request, and validate the response without confusing LLM calls with media tasks.

## 2. [Choose an LLM API protocol](/docs/llm/protocols)

Compare OpenAI, Claude and Gemini request shapes, authentication and response handling before moving an application between model routes.

## 3. [Handle LLM streaming responses](/docs/llm/streaming)

Understand protocol-specific streaming, partial output, completion signals and disconnects before adding incremental text to an application.

## 4. [Diagnose LLM API errors and retries](/docs/llm/errors-and-retries)

Separate authentication, contract, rate-limit and interrupted-response failures, and design bounded retries that avoid duplicate generation.

## 5. [Compare LLMs with a task-based evaluation](/docs/llm/evaluation)

Build a reproducible LLM comparison using task quality, failure rates, latency and observed cost instead of unsupported model rankings.

## 6. [Estimate LLM cost and reconcile usage](/docs/llm/cost-and-usage)

Separate token estimates, current account pricing and final usage receipts when planning an LLM budget and comparing successful task costs.

## Model contracts and current information

Use the [Common API](/docs/common-api) for discovery, [model documentation](/docs) for model-specific parameters and the [complete API reference](/docs/api) for endpoints. Do not generalize one model's capabilities to every route.
