Conversation
Adds a new Alibaba provider config and registers it in the provider registry.\n\n- add internal/providers/configs/alibaba.json\n- register provider embed+factory in internal/providers/providers.go\n- add InferenceProviderAlibaba to known providers\n\nRefs charmbracelet#200
andreynering
left a comment
There was a problem hiding this comment.
Hi @rpx99, thanks for contributing!
I had to do a small change on Crush to be able to enter the API key and proceed:
You can use that branch to test as well.
I also made a few comments below.
| "id": "alibaba", | ||
| "type": "openai-compat", | ||
| "api_key": "$ALIBABA_API_KEY", | ||
| "api_endpoint": "https://coding-intl.dashscope.aliyuncs.com/v1", |
There was a problem hiding this comment.
We're using the international endpoint here (-intl. suffix).
I noticed that for non-coding plan we supposedly have different endpoints depending on location:
But for the Coding Plan their docs seems to always suggest -intl.?
Given so, it's probably fine to keep as is, I think. I just ask you to confirm it's working for you. For me, it's working fine!
There was a problem hiding this comment.
I think maybe it should be like the MiniMax situation, we should have all these file:
- alibaba.json (who use international version
-intl) - alibaba-us.json
- alibaba-china.json
I've been using the China version for days by editing my crush.json, it would be cool if it is builtin.
| @@ -0,0 +1,163 @@ | |||
| { | |||
| "name": "Alibaba Coding Plan", | |||
| "id": "alibaba", | |||
There was a problem hiding this comment.
As the endpoint seems to be specific to the coding plan, it's probably a good idea to reflect that in the ID:
| "id": "alibaba", | |
| "id": "alibaba-coding", |
| InferenceProviderMiniMax InferenceProvider = "minimax" | ||
| InferenceProviderMiniMaxChina InferenceProvider = "minimax-china" | ||
| InferenceProviderIoNet InferenceProvider = "ionet" | ||
| InferenceProviderAlibaba InferenceProvider = "alibaba" |
There was a problem hiding this comment.
This also applies to the code. Let's do some renaming:
InferenceProviderAlibaba->InferenceProviderAlibabaCodingalibabaConfig->alibabaCodingConfigalibabaProvider->alibabaCodingProvideralibaba.json->alibaba-coding.json
| }, | ||
| { | ||
| "id": "qwen3-max-2026-01-23", | ||
| "name": "Qwen3 Max 2026-01-23 (Coding Plan)", |
There was a problem hiding this comment.
All models seems to work for me with the Coding Plan, so no need to add this suffix? Unless I'm missing anything, let's remove from all:
| "name": "Qwen3 Max 2026-01-23 (Coding Plan)", | |
| "name": "Qwen3 Max 2026-01-23", |
Adds a new Alibaba provider config and registers it in the provider registry:
Refs #200
CONTRIBUTING.md.