Providers
Hugging Face (wnioskowanie)
Dostawcy wnioskowania Hugging Face udostępniają zgodny z OpenAI router uzupełnień czatu dla wielu hostowanych modeli (DeepSeek, Llama i innych), dostępny za pomocą jednego tokenu. OpenClaw komunikuje się wyłącznie z punktem końcowym uzupełnień czatu; do zamiany tekstu na obraz, osadzeń lub mowy używaj bezpośrednio klientów wnioskowania HF.
| Właściwość | Wartość |
|---|---|
| Identyfikator dostawcy | huggingface |
| Plugin | wbudowany (domyślnie włączony, nie wymaga instalacji) |
| Zmienna środowiskowa uwierz. | HUGGINGFACE_HUB_TOKEN lub HF_TOKEN (token z precyzyjnie określonymi uprawnieniami) |
| API | zgodne z OpenAI (https://router.huggingface.co/v1) |
| Rozliczenia | Jeden token HF; cennik jest zgodny ze stawkami dostawcy i obejmuje bezpłatny próg |
Pierwsze kroki
Utwórz token z precyzyjnie określonymi uprawnieniami
Przejdź do strony Hugging Face Settings Tokens i utwórz nowy token z precyzyjnie określonymi uprawnieniami.
Uruchom konfigurację początkową
Wybierz Hugging Face z listy rozwijanej dostawców, a następnie po wyświetleniu monitu wprowadź klucz API:
openclaw onboard --auth-choice huggingface-api-keyWybierz model domyślny
Z listy rozwijanej Default Hugging Face model wybierz model. Gdy token jest prawidłowy, lista jest pobierana z Inference API; w przeciwnym razie OpenClaw wyświetla poniższy wbudowany katalog. Wybór jest zapisywany jako agents.defaults.model.primary:
{ agents: { defaults: { model: { primary: "huggingface/deepseek-ai/DeepSeek-R1" }, }, },}Sprawdź dostępność modelu
openclaw models list --provider huggingfaceKonfiguracja nieinteraktywna
openclaw onboard --non-interactive \ --mode local \ --auth-choice huggingface-api-key \ --huggingface-api-key "$HF_TOKEN"Ustawia huggingface/deepseek-ai/DeepSeek-R1 jako model domyślny.
Identyfikatory modeli
Odwołania do modeli mają postać huggingface/<org>/<model> (identyfikatory w stylu Hub). Wbudowany katalog OpenClaw:
| Model | Odwołanie (z prefiksem huggingface/) |
|---|---|
| DeepSeek R1 | deepseek-ai/DeepSeek-R1 |
| DeepSeek V3.1 | deepseek-ai/DeepSeek-V3.1 |
| GPT-OSS 120B | openai/gpt-oss-120b |
| Llama 3.3 70B Instruct Turbo | meta-llama/Llama-3.3-70B-Instruct-Turbo |
Konfiguracja zaawansowana
Wykrywanie modeli i lista rozwijana konfiguracji początkowej
OpenClaw wykrywa modele za pomocą:
GET https://router.huggingface.co/v1/modelsAuthorization: Bearer $HUGGINGFACE_HUB_TOKEN # lub $HF_TOKENOdpowiedź ma format zgodny z OpenAI: { "object": "list", "data": [ { "id": "Qwen/Qwen3-8B", "owned_by": "Qwen", ... }, ... ] }.
Po skonfigurowaniu klucza (podczas konfiguracji początkowej, w HUGGINGFACE_HUB_TOKEN lub HF_TOKEN) lista rozwijana Default Hugging Face model podczas konfiguracji interaktywnej jest wypełniana danymi z tego punktu końcowego. Podczas uruchamiania Gateway to samo wywołanie jest powtarzane w celu odświeżenia katalogu. Wykryte modele są łączone z powyższym wbudowanym katalogiem (używanym do metadanych, takich jak okno kontekstu i koszt, gdy identyfikator jest zgodny). Jeśli żądanie się nie powiedzie, nie zwróci danych albo nie ustawiono klucza, OpenClaw korzysta wyłącznie z wbudowanego katalogu.
Wyłącz wykrywanie bez usuwania dostawcy:
openclaw config set plugins.entries.huggingface.config.discovery.enabled falseNazwy modeli, aliasy i sufiksy zasad
- Nazwa z API: wykryte modele używają wartości
name,titlelubdisplay_namez API, jeśli jest dostępna; w przeciwnym razie OpenClaw tworzy nazwę na podstawie identyfikatora modelu (np.deepseek-ai/DeepSeek-R1staje się „DeepSeek R1”). - Nadpisanie nazwy wyświetlanej: ustaw w konfiguracji własną etykietę dla każdego modelu:
{ agents: { defaults: { models: { "huggingface/deepseek-ai/DeepSeek-R1": { alias: "DeepSeek R1 (fast)" }, "huggingface/deepseek-ai/DeepSeek-R1:cheapest": { alias: "DeepSeek R1 (cheap)" }, }, }, },}- Sufiksy zasad:
:fastesti:cheapestsą konwencjami routera HF, a OpenClaw ich nie przekształca: sufiks jest wysyłany bez zmian jako część identyfikatora modelu, a router HF wybiera odpowiedniego dostawcę wnioskowania. Jeśli chcesz używać osobnego aliasu dla każdego sufiksu, dodaj każdy wariant jako osobny wpis wmodels.providers.huggingface.models(lub wmodel.primary). - Scalanie konfiguracji: istniejące wpisy w
models.providers.huggingface.models(np. wmodels.json) są zachowywane podczas scalania konfiguracji, więc ustawione tam niestandardowe wartościname,aliaslub opcje modelu pozostają dostępne po ponownym uruchomieniu.
Konfiguracja środowiska i demona
Jeśli Gateway działa jako demon (launchd/systemd), upewnij się, że zmienna HUGGINGFACE_HUB_TOKEN lub HF_TOKEN jest dostępna dla tego procesu (na przykład w ~/.openclaw/.env albo za pośrednictwem env.shellEnv).
Konfiguracja: DeepSeek R1 z modelem rezerwowym
{ agents: { defaults: { model: { primary: "huggingface/deepseek-ai/DeepSeek-R1", fallbacks: ["huggingface/openai/gpt-oss-120b"], }, models: { "huggingface/deepseek-ai/DeepSeek-R1": { alias: "DeepSeek R1" }, "huggingface/openai/gpt-oss-120b": { alias: "GPT-OSS 120B" }, }, }, },}Konfiguracja: DeepSeek z najtańszym i najszybszym wariantem
{ agents: { defaults: { model: { primary: "huggingface/deepseek-ai/DeepSeek-R1" }, models: { "huggingface/deepseek-ai/DeepSeek-R1": { alias: "DeepSeek R1" }, "huggingface/deepseek-ai/DeepSeek-R1:cheapest": { alias: "DeepSeek R1 (cheapest)" }, "huggingface/deepseek-ai/DeepSeek-R1:fastest": { alias: "DeepSeek R1 (fastest)" }, }, }, },}Konfiguracja: DeepSeek + Llama + GPT-OSS z aliasami
{ agents: { defaults: { model: { primary: "huggingface/deepseek-ai/DeepSeek-V3.1", fallbacks: [ "huggingface/meta-llama/Llama-3.3-70B-Instruct-Turbo", "huggingface/openai/gpt-oss-120b", ], }, models: { "huggingface/deepseek-ai/DeepSeek-V3.1": { alias: "DeepSeek V3.1" }, "huggingface/meta-llama/Llama-3.3-70B-Instruct-Turbo": { alias: "Llama 3.3 70B Turbo" }, "huggingface/openai/gpt-oss-120b": { alias: "GPT-OSS 120B" }, }, }, },}