Repository navigation
feat(models): add Atlas Cloud chat provider - #1876
Open
binyangzhu000-sudo wants to merge 1 commit into
Open
binyangzhu000-sudo wants to merge 1 commit into
binyangzhu000-sudo wants to merge 1 commit into
Conversation
Atlas Cloud is OpenAI-compatible, so this is one entry in conf/model_providers.yaml following the nebius/venice shape: litellm_provider: openai plus kwargs.api_base, and a relative models_list.endpoint_url so the Model Configuration plugin can populate the model dropdown. The provider id is atlascloud, so the key resolves from ATLASCLOUD_API_KEY (or API_KEY_ATLASCLOUD) through the existing get_api_key() derivation — no code change needed. Only the chat section is touched: /v1/embeddings returns 404 on this endpoint, so claiming an embedding provider would be wrong. Validation, per CONTRIBUTING's "include exact tests run, or clearly explain why validation was blocked": - python -m pytest tests/test_model_config_ui.py -q -> 7 passed - tests/test_model_search.py and tests/test_model_config_api_keys.py could not run here: collection imports sentence_transformers, which pulls in torch, and that install was out of scope for this change. Both only read the YAML, and the file still parses (yaml.safe_load) with the new entry. - The resolved model-listing URL (api_base + endpoint_url = https://api.atlascloud.ai/v1/models) returns 117 models over httpx, which is the client plugins/_model_config/api/model_search.py uses. - The configured call path was exercised end to end with litellm using this exact YAML entry: litellm.completion(model="openai/deepseek-ai/deepseek-v4-pro", api_base=<kwargs.api_base>) returns finish_reason=stop with content. Signed-off-by: binyangzhu000-sudo <224954946+binyangzhu000-sudo@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds Atlas Cloud as a chat provider — one entry in
conf/model_providers.yaml, no codechange. It is OpenAI-compatible, so it follows the nebius/venice shape:
The provider id is
atlascloud, so the key resolves fromATLASCLOUD_API_KEY(orAPI_KEY_ATLASCLOUD) through the existingget_api_key()derivation inmodels.py— nothing elseneeded. The relative
models_list.endpoint_urllets the Model Configuration plugin populate thedropdown instead of making users type model ids.
Only the
chatsection is touched./v1/embeddingsreturns404on this endpoint, so listingan embedding provider would be wrong.
Validation
Per CONTRIBUTING's "Include exact tests run, or clearly explain why validation was blocked":
python -m pytest tests/test_model_config_ui.py -q→ 7 passedtests/test_model_search.pyandtests/test_model_config_api_keys.pycould not run here:collection imports
sentence_transformers, which pulls in torch, and installing that was out ofscope for a one-line YAML change. Both only read this YAML, and the file still parses
(
yaml.safe_load) with the new entry — 30 chat providers resolved.api_base+endpoint_url=https://api.atlascloud.ai/v1/models) returns 117 models over httpx, which is the clientplugins/_model_config/api/model_search.pyactually uses. (Worth noting: this endpoint's edgerejects Python's stdlib urllib default
User-Agentwith403, but httpx and requests arefine — so the plugin's path works as-is.)
litellm.completion(model="openai/deepseek-ai/deepseek-v4-pro", api_base=<kwargs.api_base>)→finish_reason=stopwith content, 32 tokens.🤝 Partnership & contact
This PR comes from the Atlas Cloud team. Beyond the provider entry above, we'd love to explore a closer collaboration with Agent Zero — for example co-marketing or a featured integration.
If that sounds interesting, reach out anytime:
And of course, happy to revise this PR to match your project's conventions — just leave a comment. 🙌