feat: allow user to register model alias explicitly, tests

# What does this PR do?

Context: https://github.com/llamastack/llama-stack/discussions/3483

This PR enables the registering `provider_model_id` as the model identifier without breaking backward compatibility.


## Test Plan
todo
# What does this PR do?


## Test Plan
This commit is contained in:
Eric Huang 2025-09-18 15:47:20 -07:00
parent ac1414b571
commit 83a229554b
20 changed files with 236 additions and 92 deletions

View file

@ -79,15 +79,15 @@ def get_distribution_template() -> DistributionTemplate:
)
inference_model = ModelInput(
model_id="${env.INFERENCE_MODEL}",
provider_model_id="${env.INFERENCE_MODEL}",
provider_id="tgi0",
)
safety_model = ModelInput(
model_id="${env.SAFETY_MODEL}",
provider_model_id="${env.SAFETY_MODEL}",
provider_id="tgi1",
)
embedding_model = ModelInput(
model_id="all-MiniLM-L6-v2",
provider_model_id="all-MiniLM-L6-v2",
provider_id="sentence-transformers",
model_type=ModelType.embedding,
metadata={

View file

@ -103,18 +103,21 @@ inference_store:
db_path: ${env.SQLITE_STORE_DIR:=~/.llama/distributions/dell}/inference_store.db
models:
- metadata: {}
model_id: ${env.INFERENCE_MODEL}
provider_model_id: ${env.INFERENCE_MODEL}
provider_id: tgi0
model_type: llm
use_provider_model_id_as_id: false
- metadata: {}
model_id: ${env.SAFETY_MODEL}
provider_model_id: ${env.SAFETY_MODEL}
provider_id: tgi1
model_type: llm
use_provider_model_id_as_id: false
- metadata:
embedding_dimension: 384
model_id: all-MiniLM-L6-v2
provider_model_id: all-MiniLM-L6-v2
provider_id: sentence-transformers
model_type: embedding
use_provider_model_id_as_id: false
shields:
- shield_id: ${env.SAFETY_MODEL}
vector_dbs: []

View file

@ -99,14 +99,16 @@ inference_store:
db_path: ${env.SQLITE_STORE_DIR:=~/.llama/distributions/dell}/inference_store.db
models:
- metadata: {}
model_id: ${env.INFERENCE_MODEL}
provider_model_id: ${env.INFERENCE_MODEL}
provider_id: tgi0
model_type: llm
use_provider_model_id_as_id: false
- metadata:
embedding_dimension: 384
model_id: all-MiniLM-L6-v2
provider_model_id: all-MiniLM-L6-v2
provider_id: sentence-transformers
model_type: embedding
use_provider_model_id_as_id: false
shields: []
vector_dbs: []
datasets: []

View file

@ -73,11 +73,11 @@ def get_distribution_template() -> DistributionTemplate:
)
inference_model = ModelInput(
model_id="${env.INFERENCE_MODEL}",
provider_model_id="${env.INFERENCE_MODEL}",
provider_id="meta-reference-inference",
)
embedding_model = ModelInput(
model_id="all-MiniLM-L6-v2",
provider_model_id="all-MiniLM-L6-v2",
provider_id="sentence-transformers",
model_type=ModelType.embedding,
metadata={
@ -85,7 +85,7 @@ def get_distribution_template() -> DistributionTemplate:
},
)
safety_model = ModelInput(
model_id="${env.SAFETY_MODEL}",
provider_model_id="${env.SAFETY_MODEL}",
provider_id="meta-reference-safety",
)
default_tool_groups = [

View file

@ -116,18 +116,21 @@ inference_store:
db_path: ${env.SQLITE_STORE_DIR:=~/.llama/distributions/meta-reference-gpu}/inference_store.db
models:
- metadata: {}
model_id: ${env.INFERENCE_MODEL}
provider_model_id: ${env.INFERENCE_MODEL}
provider_id: meta-reference-inference
model_type: llm
use_provider_model_id_as_id: false
- metadata: {}
model_id: ${env.SAFETY_MODEL}
provider_model_id: ${env.SAFETY_MODEL}
provider_id: meta-reference-safety
model_type: llm
use_provider_model_id_as_id: false
- metadata:
embedding_dimension: 384
model_id: all-MiniLM-L6-v2
provider_model_id: all-MiniLM-L6-v2
provider_id: sentence-transformers
model_type: embedding
use_provider_model_id_as_id: false
shields:
- shield_id: ${env.SAFETY_MODEL}
vector_dbs: []

View file

@ -106,14 +106,16 @@ inference_store:
db_path: ${env.SQLITE_STORE_DIR:=~/.llama/distributions/meta-reference-gpu}/inference_store.db
models:
- metadata: {}
model_id: ${env.INFERENCE_MODEL}
provider_model_id: ${env.INFERENCE_MODEL}
provider_id: meta-reference-inference
model_type: llm
use_provider_model_id_as_id: false
- metadata:
embedding_dimension: 384
model_id: all-MiniLM-L6-v2
provider_model_id: all-MiniLM-L6-v2
provider_id: sentence-transformers
model_type: embedding
use_provider_model_id_as_id: false
shields: []
vector_dbs: []
datasets: []

View file

@ -53,11 +53,11 @@ def get_distribution_template() -> DistributionTemplate:
config=NVIDIAEvalConfig.sample_run_config(),
)
inference_model = ModelInput(
model_id="${env.INFERENCE_MODEL}",
provider_model_id="${env.INFERENCE_MODEL}",
provider_id="nvidia",
)
safety_model = ModelInput(
model_id="${env.SAFETY_MODEL}",
provider_model_id="${env.SAFETY_MODEL}",
provider_id="nvidia",
)

View file

@ -96,13 +96,15 @@ inference_store:
db_path: ${env.SQLITE_STORE_DIR:=~/.llama/distributions/nvidia}/inference_store.db
models:
- metadata: {}
model_id: ${env.INFERENCE_MODEL}
provider_model_id: ${env.INFERENCE_MODEL}
provider_id: nvidia
model_type: llm
use_provider_model_id_as_id: false
- metadata: {}
model_id: ${env.SAFETY_MODEL}
provider_model_id: ${env.SAFETY_MODEL}
provider_id: nvidia
model_type: llm
use_provider_model_id_as_id: false
shields:
- shield_id: ${env.SAFETY_MODEL}
provider_id: nvidia

View file

@ -85,88 +85,88 @@ inference_store:
db_path: ${env.SQLITE_STORE_DIR:=~/.llama/distributions/nvidia}/inference_store.db
models:
- metadata: {}
model_id: meta/llama3-8b-instruct
provider_id: nvidia
provider_model_id: meta/llama3-8b-instruct
model_type: llm
- metadata: {}
model_id: meta/llama3-70b-instruct
provider_id: nvidia
model_type: llm
use_provider_model_id_as_id: false
- metadata: {}
provider_model_id: meta/llama3-70b-instruct
model_type: llm
- metadata: {}
model_id: meta/llama-3.1-8b-instruct
provider_id: nvidia
model_type: llm
use_provider_model_id_as_id: false
- metadata: {}
provider_model_id: meta/llama-3.1-8b-instruct
model_type: llm
- metadata: {}
model_id: meta/llama-3.1-70b-instruct
provider_id: nvidia
model_type: llm
use_provider_model_id_as_id: false
- metadata: {}
provider_model_id: meta/llama-3.1-70b-instruct
model_type: llm
- metadata: {}
model_id: meta/llama-3.1-405b-instruct
provider_id: nvidia
model_type: llm
use_provider_model_id_as_id: false
- metadata: {}
provider_model_id: meta/llama-3.1-405b-instruct
model_type: llm
- metadata: {}
model_id: meta/llama-3.2-1b-instruct
provider_id: nvidia
model_type: llm
use_provider_model_id_as_id: false
- metadata: {}
provider_model_id: meta/llama-3.2-1b-instruct
model_type: llm
- metadata: {}
model_id: meta/llama-3.2-3b-instruct
provider_id: nvidia
model_type: llm
use_provider_model_id_as_id: false
- metadata: {}
provider_model_id: meta/llama-3.2-3b-instruct
model_type: llm
- metadata: {}
model_id: meta/llama-3.2-11b-vision-instruct
provider_id: nvidia
model_type: llm
use_provider_model_id_as_id: false
- metadata: {}
provider_model_id: meta/llama-3.2-11b-vision-instruct
model_type: llm
- metadata: {}
model_id: meta/llama-3.2-90b-vision-instruct
provider_id: nvidia
model_type: llm
use_provider_model_id_as_id: false
- metadata: {}
provider_model_id: meta/llama-3.2-90b-vision-instruct
model_type: llm
- metadata: {}
model_id: meta/llama-3.3-70b-instruct
provider_id: nvidia
model_type: llm
use_provider_model_id_as_id: false
- metadata: {}
provider_model_id: meta/llama-3.3-70b-instruct
model_type: llm
- metadata: {}
model_id: nvidia/vila
provider_id: nvidia
provider_model_id: nvidia/vila
model_type: llm
use_provider_model_id_as_id: false
- metadata: {}
provider_model_id: nvidia/vila
provider_id: nvidia
model_type: llm
use_provider_model_id_as_id: false
- metadata:
embedding_dimension: 2048
context_length: 8192
model_id: nvidia/llama-3.2-nv-embedqa-1b-v2
provider_id: nvidia
provider_model_id: nvidia/llama-3.2-nv-embedqa-1b-v2
provider_id: nvidia
model_type: embedding
use_provider_model_id_as_id: false
- metadata:
embedding_dimension: 1024
context_length: 512
model_id: nvidia/nv-embedqa-e5-v5
provider_id: nvidia
provider_model_id: nvidia/nv-embedqa-e5-v5
provider_id: nvidia
model_type: embedding
use_provider_model_id_as_id: false
- metadata:
embedding_dimension: 4096
context_length: 512
model_id: nvidia/nv-embedqa-mistral-7b-v2
provider_id: nvidia
provider_model_id: nvidia/nv-embedqa-mistral-7b-v2
provider_id: nvidia
model_type: embedding
use_provider_model_id_as_id: false
- metadata:
embedding_dimension: 1024
context_length: 512
model_id: snowflake/arctic-embed-l
provider_id: nvidia
provider_model_id: snowflake/arctic-embed-l
provider_id: nvidia
model_type: embedding
use_provider_model_id_as_id: false
shields: []
vector_dbs: []
datasets: []

View file

@ -136,30 +136,32 @@ inference_store:
db_path: ${env.SQLITE_STORE_DIR:=~/.llama/distributions/open-benchmark}/inference_store.db
models:
- metadata: {}
model_id: gpt-4o
provider_id: openai
provider_model_id: gpt-4o
provider_id: openai
model_type: llm
use_provider_model_id_as_id: false
- metadata: {}
model_id: claude-3-5-sonnet-latest
provider_id: anthropic
provider_model_id: claude-3-5-sonnet-latest
provider_id: anthropic
model_type: llm
use_provider_model_id_as_id: false
- metadata: {}
model_id: gemini/gemini-1.5-flash
provider_id: gemini
provider_model_id: gemini/gemini-1.5-flash
provider_id: gemini
model_type: llm
use_provider_model_id_as_id: false
- metadata: {}
model_id: meta-llama/Llama-3.3-70B-Instruct
provider_id: groq
provider_model_id: groq/llama-3.3-70b-versatile
provider_id: groq
model_type: llm
model_id: meta-llama/Llama-3.3-70B-Instruct
use_provider_model_id_as_id: false
- metadata: {}
model_id: meta-llama/Llama-3.1-405B-Instruct
provider_id: together
provider_model_id: meta-llama/Meta-Llama-3.1-405B-Instruct-Turbo
provider_id: together
model_type: llm
model_id: meta-llama/Llama-3.1-405B-Instruct
use_provider_model_id_as_id: false
shields:
- shield_id: meta-llama/Llama-Guard-3-8B
vector_dbs: []

View file

@ -75,7 +75,7 @@ def get_distribution_template() -> DistributionTemplate:
default_models = [
ModelInput(
model_id="${env.INFERENCE_MODEL}",
provider_model_id="${env.INFERENCE_MODEL}",
provider_id="vllm-inference",
)
]
@ -85,7 +85,7 @@ def get_distribution_template() -> DistributionTemplate:
config=SentenceTransformersInferenceConfig.sample_run_config(),
)
embedding_model = ModelInput(
model_id="all-MiniLM-L6-v2",
provider_model_id="all-MiniLM-L6-v2",
provider_id=embedding_provider.provider_id,
model_type=ModelType.embedding,
metadata={

View file

@ -88,14 +88,16 @@ inference_store:
password: ${env.POSTGRES_PASSWORD:=llamastack}
models:
- metadata: {}
model_id: ${env.INFERENCE_MODEL}
provider_model_id: ${env.INFERENCE_MODEL}
provider_id: vllm-inference
model_type: llm
use_provider_model_id_as_id: false
- metadata:
embedding_dimension: 384
model_id: all-MiniLM-L6-v2
provider_model_id: all-MiniLM-L6-v2
provider_id: sentence-transformers
model_type: embedding
use_provider_model_id_as_id: false
shields:
- shield_id: meta-llama/Llama-Guard-3-8B
vector_dbs: []

View file

@ -114,7 +114,7 @@ def get_model_registry(
identifier = f"{provider_id}/{model_id}" if ids_conflict and provider_id not in model_id else model_id
models.append(
ModelInput(
model_id=identifier,
model_id=identifier if identifier != entry.provider_model_id else None,
provider_model_id=entry.provider_model_id,
provider_id=provider_id,
model_type=entry.model_type,

View file

@ -73,7 +73,7 @@ def get_distribution_template(name: str = "watsonx") -> DistributionTemplate:
]
embedding_model = ModelInput(
model_id="all-MiniLM-L6-v2",
provider_model_id="all-MiniLM-L6-v2",
provider_id="sentence-transformers",
model_type=ModelType.embedding,
metadata={