# CBORG Model Mappings - October 29, 2025 ## Summary This document shows what each `:latest` model alias maps to in the CBORG API. ## Key Findings 1. **`:latest` and base models are IDENTICAL** - Using `lbl/cborg-chat` or `lbl/cborg-chat:latest` gives you the exact same underlying model 2. You can see the actual model version by checking the `response.model` field after making a request 3. The "raw" model names show the actual provider-specific version strings ## Model Mappings ### LBL CBORG Models (Local/Custom) | Alias | Underlying Model | |-------|------------------| | `lbl/cborg-chat` / `lbl/cborg-chat:latest` | `hosted_vllm/hosted_vllm/Llama-4-Scout-17B-16E-Instruct-FP8` | | `lbl/cborg-coder` / `lbl/cborg-coder:latest` | `hosted_vllm/hosted_vllm/gpt-oss-120b` | | `lbl/cborg-deepthought` / `lbl/cborg-deepthought:latest` | `hosted_vllm/hosted_vllm/gpt-oss-120b` | | `lbl/cborg-mini` / `lbl/cborg-mini:latest` | `ollama/gpt-oss:20b` | | `lbl/cborg-vision` / `lbl/cborg-vision:latest` | `hosted_vllm/hosted_vllm/Llama-4-Scout-17B-16E-Instruct-FP8` | **Note:** `lbl/cborg-coder` and `lbl/cborg-deepthought` map to the same base model! ### Anthropic Claude Models (via AWS Bedrock) | Alias | Underlying Model | |-------|------------------| | `anthropic/claude-haiku` / `anthropic/claude-haiku:latest` | `claude-haiku-4-5@20251001` | | `anthropic/claude-opus` / `anthropic/claude-opus:latest` | `us.anthropic.claude-opus-4-1-20250805-v1:0` | | `anthropic/claude-sonnet` / `anthropic/claude-sonnet:latest` | `claude-sonnet-4-5@20250929` | | `anthropic/claude` / `anthropic/claude:latest` | `claude-sonnet-4-5@20250929` (same as sonnet) | | `aws/claude-haiku` / `aws/claude-haiku:latest` | `us.anthropic.claude-haiku-4-5-20251001-v1:0` | | `aws/claude` / `aws/claude:latest` | `us.anthropic.claude-sonnet-4-5-20250929-v1:0` | **Version Dates:** - Haiku: October 1, 2025 - Opus: August 5, 2025 - Sonnet: September 29, 2025 ### Google Gemini Models | Alias | Underlying Model | |-------|------------------| | `google/gemini` / `google/gemini:latest` | `gemini-2.5-pro` | ### OpenAI Models | Alias | Underlying Model | |-------|------------------| | `openai/chatgpt:latest` | `gpt-5-2025-08-07` (August 7, 2025) | | `openai/o:latest` | `azure/o3-2025-04-16` (April 16, 2025 via Azure) | ### xAI Grok Models | Alias | Underlying Model | |-------|------------------| | `xai/grok:latest` | `grok-3` | ## How to Check Model Versions Yourself ```python from openai import OpenAI import os client = OpenAI( api_key=os.environ['CBORG_API_KEY'], base_url="https://api.cborg.lbl.gov" ) response = client.chat.completions.create( model="lbl/cborg-chat:latest", # or any other model messages=[{"role": "user", "content": "Hi"}], max_tokens=5 ) print(f"Requested: lbl/cborg-chat:latest") print(f"Actual: {response.model}") ``` ## Scripts Available 1. **`list_cborg_models.py`** - List all available models (with attempted detail retrieval) 2. **`test_model_info.py`** - Test a specific model and see detailed information ```bash python test_model_info.py "lbl/cborg-chat:latest" ``` 3. **`map_latest_models.py`** - Map all `:latest` models to their underlying versions ## Important Notes - **The `:latest` suffix is optional** - Both `lbl/cborg-chat` and `lbl/cborg-chat:latest` are identical - **Version information is in the response** - You must make an API call to see the underlying model - **Some models share backends** - `lbl/cborg-coder` and `lbl/cborg-deepthought` both use `gpt-oss-120b` - **Embedding models require different API calls** - The `nomic-embed-text` models need the embeddings API, not chat completions ## Provider-Specific Version Strings The "raw" model names follow different conventions by provider: - **AWS Bedrock (Anthropic)**: `us.anthropic.claude-sonnet-4-5-20250929-v1:0` - **Google Vertex AI**: `gemini-2.5-pro` - **Azure OpenAI**: `azure/o3-2025-04-16` - **Native OpenAI**: `gpt-5-2025-08-07` - **Local vLLM**: `hosted_vllm/hosted_vllm/Llama-4-Scout-17B-16E-Instruct-FP8` - **Ollama**: `ollama/gpt-oss:20b`