diff --git a/llama_stack/templates/bedrock/run.yaml b/llama_stack/templates/bedrock/run.yaml index 5e1f549de..81f699d56 100644 --- a/llama_stack/templates/bedrock/run.yaml +++ b/llama_stack/templates/bedrock/run.yaml @@ -24,6 +24,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/bedrock}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: bedrock provider_type: remote::bedrock @@ -48,10 +54,19 @@ providers: - provider_id: huggingface provider_type: remote::huggingface config: {} + - provider_id: localfs + provider_type: inline::localfs + config: {} scoring: - provider_id: basic provider_type: inline::basic config: {} + - provider_id: llm-as-judge + provider_type: inline::llm-as-judge + config: {} + - provider_id: braintrust + provider_type: inline::braintrust + config: {} metadata_store: namespace: null type: sqlite diff --git a/llama_stack/templates/fireworks/run.yaml b/llama_stack/templates/fireworks/run.yaml index fecdb1c43..34f93eb54 100644 --- a/llama_stack/templates/fireworks/run.yaml +++ b/llama_stack/templates/fireworks/run.yaml @@ -26,6 +26,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/fireworks}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: llama-guard provider_type: inline::llama-guard @@ -50,10 +56,19 @@ providers: - provider_id: huggingface provider_type: remote::huggingface config: {} + - provider_id: localfs + provider_type: inline::localfs + config: {} scoring: - provider_id: basic provider_type: inline::basic config: {} + - provider_id: llm-as-judge + provider_type: inline::llm-as-judge + config: {} + - provider_id: braintrust + provider_type: inline::braintrust + config: {} metadata_store: namespace: null type: sqlite diff --git a/llama_stack/templates/hf-endpoint/run-with-safety.yaml b/llama_stack/templates/hf-endpoint/run-with-safety.yaml index f024668d5..88ee0f8b5 100644 --- a/llama_stack/templates/hf-endpoint/run-with-safety.yaml +++ b/llama_stack/templates/hf-endpoint/run-with-safety.yaml @@ -31,6 +31,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/hf-endpoint}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: llama-guard provider_type: inline::llama-guard @@ -55,10 +61,19 @@ providers: - provider_id: huggingface provider_type: remote::huggingface config: {} + - provider_id: localfs + provider_type: inline::localfs + config: {} scoring: - provider_id: basic provider_type: inline::basic config: {} + - provider_id: llm-as-judge + provider_type: inline::llm-as-judge + config: {} + - provider_id: braintrust + provider_type: inline::braintrust + config: {} metadata_store: namespace: null type: sqlite diff --git a/llama_stack/templates/hf-endpoint/run.yaml b/llama_stack/templates/hf-endpoint/run.yaml index 2a023dd84..793d6a4a9 100644 --- a/llama_stack/templates/hf-endpoint/run.yaml +++ b/llama_stack/templates/hf-endpoint/run.yaml @@ -26,6 +26,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/hf-endpoint}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: llama-guard provider_type: inline::llama-guard @@ -50,10 +56,19 @@ providers: - provider_id: huggingface provider_type: remote::huggingface config: {} + - provider_id: localfs + provider_type: inline::localfs + config: {} scoring: - provider_id: basic provider_type: inline::basic config: {} + - provider_id: llm-as-judge + provider_type: inline::llm-as-judge + config: {} + - provider_id: braintrust + provider_type: inline::braintrust + config: {} metadata_store: namespace: null type: sqlite diff --git a/llama_stack/templates/hf-serverless/run-with-safety.yaml b/llama_stack/templates/hf-serverless/run-with-safety.yaml index 38488cb55..a959c4310 100644 --- a/llama_stack/templates/hf-serverless/run-with-safety.yaml +++ b/llama_stack/templates/hf-serverless/run-with-safety.yaml @@ -31,6 +31,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/hf-serverless}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: llama-guard provider_type: inline::llama-guard @@ -55,10 +61,19 @@ providers: - provider_id: huggingface provider_type: remote::huggingface config: {} + - provider_id: localfs + provider_type: inline::localfs + config: {} scoring: - provider_id: basic provider_type: inline::basic config: {} + - provider_id: llm-as-judge + provider_type: inline::llm-as-judge + config: {} + - provider_id: braintrust + provider_type: inline::braintrust + config: {} metadata_store: namespace: null type: sqlite diff --git a/llama_stack/templates/hf-serverless/run.yaml b/llama_stack/templates/hf-serverless/run.yaml index dd80751eb..803805a16 100644 --- a/llama_stack/templates/hf-serverless/run.yaml +++ b/llama_stack/templates/hf-serverless/run.yaml @@ -26,6 +26,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/hf-serverless}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: llama-guard provider_type: inline::llama-guard @@ -50,10 +56,19 @@ providers: - provider_id: huggingface provider_type: remote::huggingface config: {} + - provider_id: localfs + provider_type: inline::localfs + config: {} scoring: - provider_id: basic provider_type: inline::basic config: {} + - provider_id: llm-as-judge + provider_type: inline::llm-as-judge + config: {} + - provider_id: braintrust + provider_type: inline::braintrust + config: {} metadata_store: namespace: null type: sqlite diff --git a/llama_stack/templates/meta-reference-gpu/run-with-safety.yaml b/llama_stack/templates/meta-reference-gpu/run-with-safety.yaml index 2a948a51c..6c1788841 100644 --- a/llama_stack/templates/meta-reference-gpu/run-with-safety.yaml +++ b/llama_stack/templates/meta-reference-gpu/run-with-safety.yaml @@ -33,6 +33,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/meta-reference-gpu}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: llama-guard provider_type: inline::llama-guard @@ -57,10 +63,19 @@ providers: - provider_id: huggingface provider_type: remote::huggingface config: {} + - provider_id: localfs + provider_type: inline::localfs + config: {} scoring: - provider_id: basic provider_type: inline::basic config: {} + - provider_id: llm-as-judge + provider_type: inline::llm-as-judge + config: {} + - provider_id: braintrust + provider_type: inline::braintrust + config: {} metadata_store: namespace: null type: sqlite diff --git a/llama_stack/templates/meta-reference-gpu/run.yaml b/llama_stack/templates/meta-reference-gpu/run.yaml index 70f8d3614..bcefdf800 100644 --- a/llama_stack/templates/meta-reference-gpu/run.yaml +++ b/llama_stack/templates/meta-reference-gpu/run.yaml @@ -27,6 +27,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/meta-reference-gpu}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: llama-guard provider_type: inline::llama-guard @@ -51,10 +57,19 @@ providers: - provider_id: huggingface provider_type: remote::huggingface config: {} + - provider_id: localfs + provider_type: inline::localfs + config: {} scoring: - provider_id: basic provider_type: inline::basic config: {} + - provider_id: llm-as-judge + provider_type: inline::llm-as-judge + config: {} + - provider_id: braintrust + provider_type: inline::braintrust + config: {} metadata_store: namespace: null type: sqlite diff --git a/llama_stack/templates/meta-reference-quantized-gpu/run.yaml b/llama_stack/templates/meta-reference-quantized-gpu/run.yaml index 336e37a49..1579c26f9 100644 --- a/llama_stack/templates/meta-reference-quantized-gpu/run.yaml +++ b/llama_stack/templates/meta-reference-quantized-gpu/run.yaml @@ -29,6 +29,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/meta-reference-quantized-gpu}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: llama-guard provider_type: inline::llama-guard @@ -53,10 +59,19 @@ providers: - provider_id: huggingface provider_type: remote::huggingface config: {} + - provider_id: localfs + provider_type: inline::localfs + config: {} scoring: - provider_id: basic provider_type: inline::basic config: {} + - provider_id: llm-as-judge + provider_type: inline::llm-as-judge + config: {} + - provider_id: braintrust + provider_type: inline::braintrust + config: {} metadata_store: namespace: null type: sqlite diff --git a/llama_stack/templates/ollama/run-with-safety.yaml b/llama_stack/templates/ollama/run-with-safety.yaml index 74c3adc8f..86c2694a7 100644 --- a/llama_stack/templates/ollama/run-with-safety.yaml +++ b/llama_stack/templates/ollama/run-with-safety.yaml @@ -25,6 +25,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/ollama}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: llama-guard provider_type: inline::llama-guard @@ -49,10 +55,19 @@ providers: - provider_id: huggingface provider_type: remote::huggingface config: {} + - provider_id: localfs + provider_type: inline::localfs + config: {} scoring: - provider_id: basic provider_type: inline::basic config: {} + - provider_id: llm-as-judge + provider_type: inline::llm-as-judge + config: {} + - provider_id: braintrust + provider_type: inline::braintrust + config: {} metadata_store: namespace: null type: sqlite diff --git a/llama_stack/templates/ollama/run.yaml b/llama_stack/templates/ollama/run.yaml index 36802def0..cd9c8b931 100644 --- a/llama_stack/templates/ollama/run.yaml +++ b/llama_stack/templates/ollama/run.yaml @@ -25,6 +25,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/ollama}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: llama-guard provider_type: inline::llama-guard @@ -49,10 +55,19 @@ providers: - provider_id: huggingface provider_type: remote::huggingface config: {} + - provider_id: localfs + provider_type: inline::localfs + config: {} scoring: - provider_id: basic provider_type: inline::basic config: {} + - provider_id: llm-as-judge + provider_type: inline::llm-as-judge + config: {} + - provider_id: braintrust + provider_type: inline::braintrust + config: {} metadata_store: namespace: null type: sqlite diff --git a/llama_stack/templates/remote-vllm/run-with-safety.yaml b/llama_stack/templates/remote-vllm/run-with-safety.yaml index c0849e2d0..8059b3237 100644 --- a/llama_stack/templates/remote-vllm/run-with-safety.yaml +++ b/llama_stack/templates/remote-vllm/run-with-safety.yaml @@ -30,6 +30,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/remote-vllm}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: llama-guard provider_type: inline::llama-guard diff --git a/llama_stack/templates/remote-vllm/run.yaml b/llama_stack/templates/remote-vllm/run.yaml index 3457afdd6..84b244f15 100644 --- a/llama_stack/templates/remote-vllm/run.yaml +++ b/llama_stack/templates/remote-vllm/run.yaml @@ -24,6 +24,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/remote-vllm}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: llama-guard provider_type: inline::llama-guard diff --git a/llama_stack/templates/template.py b/llama_stack/templates/template.py index bf74b95d1..e82be6394 100644 --- a/llama_stack/templates/template.py +++ b/llama_stack/templates/template.py @@ -44,36 +44,37 @@ class RunConfigSettings(BaseModel): provider_configs[api_str] = api_providers continue - provider_type = provider_types[0] - provider_id = provider_type.split("::")[-1] + provider_configs[api_str] = [] + for provider_type in provider_types: + provider_id = provider_type.split("::")[-1] - api = Api(api_str) - if provider_type not in provider_registry[api]: - raise ValueError( - f"Unknown provider type: {provider_type} for API: {api_str}" + api = Api(api_str) + if provider_type not in provider_registry[api]: + raise ValueError( + f"Unknown provider type: {provider_type} for API: {api_str}" + ) + + config_class = provider_registry[api][provider_type].config_class + assert ( + config_class is not None + ), f"No config class for provider type: {provider_type} for API: {api_str}" + + config_class = instantiate_class_type(config_class) + if hasattr(config_class, "sample_run_config"): + config = config_class.sample_run_config( + __distro_dir__=f"distributions/{name}" + ) + else: + config = {} + + provider_configs[api_str].append( + Provider( + provider_id=provider_id, + provider_type=provider_type, + config=config, + ) ) - config_class = provider_registry[api][provider_type].config_class - assert ( - config_class is not None - ), f"No config class for provider type: {provider_type} for API: {api_str}" - - config_class = instantiate_class_type(config_class) - if hasattr(config_class, "sample_run_config"): - config = config_class.sample_run_config( - __distro_dir__=f"distributions/{name}" - ) - else: - config = {} - - provider_configs[api_str] = [ - Provider( - provider_id=provider_id, - provider_type=provider_type, - config=config, - ) - ] - # Get unique set of APIs from providers apis = list(sorted(providers.keys())) diff --git a/llama_stack/templates/tgi/run-with-safety.yaml b/llama_stack/templates/tgi/run-with-safety.yaml index 107a220c1..06df6d8ec 100644 --- a/llama_stack/templates/tgi/run-with-safety.yaml +++ b/llama_stack/templates/tgi/run-with-safety.yaml @@ -29,6 +29,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/tgi}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: llama-guard provider_type: inline::llama-guard @@ -53,10 +59,19 @@ providers: - provider_id: huggingface provider_type: remote::huggingface config: {} + - provider_id: localfs + provider_type: inline::localfs + config: {} scoring: - provider_id: basic provider_type: inline::basic config: {} + - provider_id: llm-as-judge + provider_type: inline::llm-as-judge + config: {} + - provider_id: braintrust + provider_type: inline::braintrust + config: {} metadata_store: namespace: null type: sqlite diff --git a/llama_stack/templates/tgi/run.yaml b/llama_stack/templates/tgi/run.yaml index ae4f46501..9eb40a789 100644 --- a/llama_stack/templates/tgi/run.yaml +++ b/llama_stack/templates/tgi/run.yaml @@ -25,6 +25,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/tgi}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: llama-guard provider_type: inline::llama-guard @@ -49,10 +55,19 @@ providers: - provider_id: huggingface provider_type: remote::huggingface config: {} + - provider_id: localfs + provider_type: inline::localfs + config: {} scoring: - provider_id: basic provider_type: inline::basic config: {} + - provider_id: llm-as-judge + provider_type: inline::llm-as-judge + config: {} + - provider_id: braintrust + provider_type: inline::braintrust + config: {} metadata_store: namespace: null type: sqlite diff --git a/llama_stack/templates/together/run.yaml b/llama_stack/templates/together/run.yaml index 20f1ef002..d151c96c4 100644 --- a/llama_stack/templates/together/run.yaml +++ b/llama_stack/templates/together/run.yaml @@ -26,6 +26,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/together}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: llama-guard provider_type: inline::llama-guard @@ -50,10 +56,19 @@ providers: - provider_id: huggingface provider_type: remote::huggingface config: {} + - provider_id: localfs + provider_type: inline::localfs + config: {} scoring: - provider_id: basic provider_type: inline::basic config: {} + - provider_id: llm-as-judge + provider_type: inline::llm-as-judge + config: {} + - provider_id: braintrust + provider_type: inline::braintrust + config: {} metadata_store: namespace: null type: sqlite diff --git a/llama_stack/templates/vllm-gpu/run.yaml b/llama_stack/templates/vllm-gpu/run.yaml index 1ec9cf5d6..ddf069e8d 100644 --- a/llama_stack/templates/vllm-gpu/run.yaml +++ b/llama_stack/templates/vllm-gpu/run.yaml @@ -29,6 +29,12 @@ providers: type: sqlite namespace: null db_path: ${env.SQLITE_STORE_DIR:~/.llama/distributions/vllm-gpu}/faiss_store.db + - provider_id: chromadb + provider_type: remote::chromadb + config: {} + - provider_id: pgvector + provider_type: remote::pgvector + config: {} safety: - provider_id: llama-guard provider_type: inline::llama-guard @@ -53,10 +59,19 @@ providers: - provider_id: huggingface provider_type: remote::huggingface config: {} + - provider_id: localfs + provider_type: inline::localfs + config: {} scoring: - provider_id: basic provider_type: inline::basic config: {} + - provider_id: llm-as-judge + provider_type: inline::llm-as-judge + config: {} + - provider_id: braintrust + provider_type: inline::braintrust + config: {} metadata_store: namespace: null type: sqlite