mirror of
https://github.com/katanemo/plano.git
synced 2026-06-17 15:25:17 +02:00
use provider_id/model_id for model
This commit is contained in:
parent
bcd7f9be45
commit
293bd14051
4 changed files with 41 additions and 45 deletions
|
|
@ -66,21 +66,6 @@ properties:
|
|||
properties:
|
||||
name:
|
||||
type: string
|
||||
# provider field is deprecated, use provider_interface instead
|
||||
provider:
|
||||
type: string
|
||||
enum:
|
||||
- openai
|
||||
provider_interface:
|
||||
type: string
|
||||
enum:
|
||||
- arch
|
||||
- claude
|
||||
- deepseek
|
||||
- groq
|
||||
- mistral
|
||||
- openai
|
||||
- gemini
|
||||
access_key:
|
||||
type: string
|
||||
model:
|
||||
|
|
@ -104,7 +89,6 @@ properties:
|
|||
additionalProperties: false
|
||||
required:
|
||||
- model
|
||||
- provider_interface
|
||||
overrides:
|
||||
type: object
|
||||
properties:
|
||||
|
|
|
|||
|
|
@ -19,6 +19,16 @@ ARCH_CONFIG_SCHEMA_FILE = os.getenv(
|
|||
"ARCH_CONFIG_SCHEMA_FILE", "arch_config_schema.yaml"
|
||||
)
|
||||
|
||||
SUPPORTED_PROVIDERS = [
|
||||
"arch",
|
||||
"claude",
|
||||
"deepseek",
|
||||
"groq",
|
||||
"mistral",
|
||||
"openai",
|
||||
"gemini",
|
||||
]
|
||||
|
||||
|
||||
def get_endpoint_and_port(endpoint, protocol):
|
||||
endpoint_tokens = endpoint.split(":")
|
||||
|
|
@ -92,10 +102,24 @@ def validate_and_render_schema():
|
|||
raise Exception(
|
||||
f"Duplicate llm_provider name {llm_provider.get('name')}, please provide unique name for each llm_provider"
|
||||
)
|
||||
|
||||
model_name = llm_provider.get("model")
|
||||
if llm_provider.get("name") is None:
|
||||
provider_interface = llm_provider.get("provider_interface", "unknown")
|
||||
model_name = llm_provider.get("model", "unknown")
|
||||
llm_provider["name"] = f"{provider_interface}/{model_name}"
|
||||
llm_provider["name"] = model_name
|
||||
|
||||
model_name_tokens = model_name.split("/")
|
||||
if len(model_name_tokens) < 2:
|
||||
raise Exception(
|
||||
f"Invalid model name {model_name}. Please provide model name in the format <provider>/<model_id>."
|
||||
)
|
||||
provider = model_name_tokens[0]
|
||||
model_id = "/".join(model_name_tokens[1:])
|
||||
if provider not in SUPPORTED_PROVIDERS:
|
||||
raise Exception(
|
||||
f"Unsupported provider {provider} for model {model_name}. Supported providers are: {', '.join(SUPPORTED_PROVIDERS)}"
|
||||
)
|
||||
|
||||
llm_provider["provider_interface"] = provider
|
||||
llm_provider_name_set.add(llm_provider.get("name"))
|
||||
provider = None
|
||||
if llm_provider.get("provider") and llm_provider.get("provider_interface"):
|
||||
|
|
|
|||
|
|
@ -10,37 +10,29 @@ listeners:
|
|||
llm_providers:
|
||||
|
||||
- access_key: $OPENAI_API_KEY
|
||||
provider_interface: openai
|
||||
model: gpt-4o-mini
|
||||
model: openai/gpt-4o-mini
|
||||
|
||||
- access_key: $OPENAI_API_KEY
|
||||
provider_interface: openai
|
||||
model: gpt-4o
|
||||
model: openai/gpt-4o
|
||||
default: true
|
||||
|
||||
- access_key: $MISTRAL_API_KEY
|
||||
provider_interface: mistral
|
||||
model: ministral-3b-latest
|
||||
model: mistral/ministral-3b-latest
|
||||
|
||||
- access_key: $ANTHROPIC_API_KEY
|
||||
provider_interface: claude
|
||||
model: claude-3-7-sonnet-latest
|
||||
model: claude/claude-3-7-sonnet-latest
|
||||
|
||||
- access_key: $ANTHROPIC_API_KEY
|
||||
provider_interface: claude
|
||||
model: claude-sonnet-4-0
|
||||
model: claude/claude-sonnet-4-0
|
||||
|
||||
- access_key: $DEEPSEEK_API_KEY
|
||||
provider_interface: deepseek
|
||||
model: deepseek-reasoner
|
||||
model: deepseek/deepseek-reasoner
|
||||
|
||||
- access_key: $GROQ_API_KEY
|
||||
provider_interface: groq
|
||||
model: llama-3.1-8b-instant
|
||||
model: groq/llama-3.1-8b-instant
|
||||
|
||||
- access_key: $GEMINI_API_KEY
|
||||
provider_interface: gemini
|
||||
model: gemini-1.5-pro-latest
|
||||
model: gemini/gemini-1.5-pro-latest
|
||||
|
||||
tracing:
|
||||
random_sampling: 100
|
||||
|
|
|
|||
|
|
@ -9,25 +9,21 @@ listeners:
|
|||
|
||||
llm_providers:
|
||||
|
||||
- provider_interface: openai
|
||||
access_key: $OPENAI_API_KEY
|
||||
model: gpt-4o-mini
|
||||
- access_key: $OPENAI_API_KEY
|
||||
model: openai/gpt-4o-mini
|
||||
|
||||
- provider_interface: openai
|
||||
access_key: $OPENAI_API_KEY
|
||||
model: gpt-4.1
|
||||
- access_key: $OPENAI_API_KEY
|
||||
model: openai/gpt-4.1
|
||||
default: true
|
||||
|
||||
- name: code_generation
|
||||
access_key: $OPENAI_API_KEY
|
||||
provider_interface: openai
|
||||
model: gpt-4.1
|
||||
model: openai/gpt-4.1
|
||||
usage: generating new code snippets, functions, or boilerplate based on user prompts or requirements
|
||||
|
||||
- name: code_understanding
|
||||
provider_interface: openai
|
||||
access_key: $OPENAI_API_KEY
|
||||
model: gpt-4o-mini
|
||||
model: openai/gpt-4o-mini
|
||||
usage: understand and explain existing code snippets, functions, or libraries
|
||||
|
||||
tracing:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue