mirror of
https://github.com/meta-llama/llama-stack.git
synced 2025-10-04 04:04:14 +00:00
Add complete batches API implementation with protocol, providers, and tests: Core Infrastructure: - Add batches API protocol using OpenAI Batch types directly - Add Api.batches enum value and protocol mapping in resolver - Add OpenAI "batch" file purpose support - Include proper error handling (ConflictError, ResourceNotFoundError) Reference Provider: - Add ReferenceBatchesImpl with full CRUD operations (create, retrieve, cancel, list) - Implement background batch processing with configurable concurrency - Add SQLite KVStore backend for persistence - Support /v1/chat/completions endpoint with request validation Comprehensive Test Suite: - Add unit tests for provider implementation with validation - Add integration tests for end-to-end batch processing workflows - Add error handling tests for validation, malformed inputs, and edge cases Configuration: - Add max_concurrent_batches and max_concurrent_requests_per_batch options - Add provider documentation with sample configurations Test with - ``` $ uv run llama stack build --image-type venv --providers inference=YOU_PICK,files=inline::localfs,batches=inline::reference --run & $ LLAMA_STACK_CONFIG=http://localhost:8321 uv run pytest tests/unit/providers/batches tests/integration/batches --text-model YOU_PICK ``` addresses #3066 --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Ashwin Bharambe <ashwin.bharambe@gmail.com>
57 lines
1.7 KiB
YAML
57 lines
1.7 KiB
YAML
version: 2
|
|
distribution_spec:
|
|
description: CI tests for Llama Stack
|
|
providers:
|
|
inference:
|
|
- provider_type: remote::cerebras
|
|
- provider_type: remote::ollama
|
|
- provider_type: remote::vllm
|
|
- provider_type: remote::tgi
|
|
- provider_type: remote::fireworks
|
|
- provider_type: remote::together
|
|
- provider_type: remote::bedrock
|
|
- provider_type: remote::nvidia
|
|
- provider_type: remote::openai
|
|
- provider_type: remote::anthropic
|
|
- provider_type: remote::gemini
|
|
- provider_type: remote::vertexai
|
|
- provider_type: remote::groq
|
|
- provider_type: remote::sambanova
|
|
- provider_type: inline::sentence-transformers
|
|
vector_io:
|
|
- provider_type: inline::faiss
|
|
- provider_type: inline::sqlite-vec
|
|
- provider_type: inline::milvus
|
|
- provider_type: remote::chromadb
|
|
- provider_type: remote::pgvector
|
|
files:
|
|
- provider_type: inline::localfs
|
|
safety:
|
|
- provider_type: inline::llama-guard
|
|
agents:
|
|
- provider_type: inline::meta-reference
|
|
telemetry:
|
|
- provider_type: inline::meta-reference
|
|
post_training:
|
|
- provider_type: inline::huggingface
|
|
eval:
|
|
- provider_type: inline::meta-reference
|
|
datasetio:
|
|
- provider_type: remote::huggingface
|
|
- provider_type: inline::localfs
|
|
scoring:
|
|
- provider_type: inline::basic
|
|
- provider_type: inline::llm-as-judge
|
|
- provider_type: inline::braintrust
|
|
tool_runtime:
|
|
- provider_type: remote::brave-search
|
|
- provider_type: remote::tavily-search
|
|
- provider_type: inline::rag-runtime
|
|
- provider_type: remote::model-context-protocol
|
|
batches:
|
|
- provider_type: inline::reference
|
|
image_type: venv
|
|
additional_pip_packages:
|
|
- aiosqlite
|
|
- asyncpg
|
|
- sqlalchemy[asyncio]
|