閳?鏉╂柨娲栭崡姘吂
2026-06-02 璺?SkillAI

闊晛娼?DeepSeek API 鐠嬪啰鏁ら敍姝峯ken 娑擃叀娴嗘稉?Hermes AI 閼奉亝鏅崇€圭偛缍?/h1>

---


闂傤噣顣介敍娆磂epSeek API 鐠嬪啩绗夐柅?/h2>

娑撳宕嶉崙鍡楊槵閸愭瑤閲?DevOps 閼奉亜濮╅崠鏍壖閺堫剨绱濋幎?DeepSeek API 閹恒儴绻橀崢璇蹭粵閺呴缚鍏橀弮銉ョ箶閸掑棙鐎介妴鍌滄暏 Python 3.11 + requests 鎼存挸褰?POST 鐠囬攱鐪伴敍宀€绮ㄩ弸婊呮纯閹恒儲濮?Error 403 Forbidden閵?/p>

import requests
payload = {"model": "deepseek-chat", "messages": [{"role": "user", "content": "閸掑棙鐎?nginx 闁挎瑨顕ら弮銉ョ箶"}]}
r = requests.post("https://api.deepseek.com/v1/chat/completions", json=payload, headers={"Authorization": "Bearer MY_KEY"})
print(r.status_code, r.text)

鏉堟挸鍤敍?code>403 {"error": "access_denied"}


閹存垶鍔婃禍鍡忊偓鏂衡偓鎿淧I Key 閺勵垱鏌婇悽瀹狀嚞閻ㄥ嫸绱濆▽陇绉撮梽鎰櫓閵嗗倹濮岄懙鎯у磹鐏忓繑妞傞敍灞锯偓鈧悿鎴炴Ц缂冩垹绮堕悳顖氼暔闂傤噣顣介妴?/p>

---


閹烘帗鐓℃潻鍥┾柤閿涙矮绮?403 閸?ConnectionTimeout


缁楊兛绔村銉窗濡偓閺?Key 娑撳海缍夌紒?/h3>

閹诡澀绨¢崣鐗堟箛閸斺€虫珤閿涘瞼鏁?curl 濞村鐦敍?/p>

curl -X POST https://api.deepseek.com/v1/chat/completions \
-H "Authorization: Bearer MY_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"deepseek-chat","messages":[{"role":"user","content":"hi"}]}'

缂佹挻鐏?ConnectionTimeout閳ユ柡鈧棁绻涙稉宥勭瑐閵嗗倹鍨滈張顒€婀寸純鎴犵捕閺勵垰鍙曢崣绋垮敶缂冩埊绱濋崣顖濆厴鐞氼偊妲婚悘顐㈩暰閹凤缚绨¢妴?/p>

閸欏牐鐦禍鍡橆偧閿涘瞼鏁?--connect-timeout 5 閸欏倹鏆熼敍宀€娲块幒銉﹀Г curl: (28) Connection timeout after 5001 milliseconds閵嗗倸宕辨禍鍡曡⒈鐏忓繑妞傞敍灞芥▕閻愯鏂佸鍐︹偓?/p>

缁楊兛绨╁銉窗閸欐垹骞?Token 娑擃叀娴嗛弬瑙勵攳


閸氬奔绨ㄩ幓鎰板晪閿涘苯褰叉禒銉ф暏 Token 娑擃叀娴?/strong> 閺堝秴濮熼垾鏂衡偓鏃€濡?DeepSeek API 鐠囬攱鐪版潪顒€褰傞崚鏉垮讲鐠佸潡妫堕惃鍕敩閻炲棜濡悙骞库偓鍌涘灉閹靛彞绨℃稉顏囦氦闁插繒娈戞稉顓℃祮瀹搞儱鍙?SkillAI閿涘澊0.3.2閿涘绱濋柊宥囩枂娴犲懘娓?3 濮濄儻绱?/p>

  • 閸?SkillAI 閻?config.yaml 闁插苯锝為崘娆庣瑐濞?API 閸︽澘娼冮崪?Key

  • 閸氼垰濮╂禒锝囨倞閺堝秴濮熼敍?code>openclaw serve --port 8080

  • 娣囶喗鏁兼い鍦窗娑擃叀顕Ч?URL 娑?http://127.0.0.1:8080/v1/chat/completions

  • openclaw config.yaml


    upstream:
    base_url: "https://api.deepseek.com"
    api_key: "sk-xxxxx"

    閸氼垰濮╅崥搴礉閻?curl 閸氭垶婀伴崷?8080 閸欐垼顕Ч鍌︾窗


    curl -X POST http://127.0.0.1:8080/v1/chat/completions \
    -H "Content-Type: application/json" \
    -d '{"model":"deepseek-chat","messages":[{"role":"user","content":"test"}]}'

    鏉╂瑦顐兼潻鏂挎礀娴滃棙顒滅敮绋挎惙鎼存棑绱?strong>200 OK閵嗗倸甯弶銉ュ敶缂冩垿妾洪崚鏈电啊閸戣櫣鐝崚?DeepSeek 閻ㄥ嫮娲挎潻鐑囩礉娴e棗绱戦弨鍙ョ啊 8080 缁旑垰褰涢敍宀勨偓姘崇箖娑擃叀娴嗛弴鑼殠閺佹垵娴楅妴?/p>

    ---


    鐟欙絽鍠呴弬瑙勵攳閿涙ermes AI 鏉堝懎濮拫鍐槸娑撳氦鍤滈崝銊ュ


    閸婄喎濮?Hermes AI 閼奉亜濮╃拠濠冩焽


    閾忕晫鍔ч柅姘啊閿涘奔绲鹃幋鎴滅瑝閹櫕鐦″▎鈩冨閸斻劌鍟?curl閵嗗倹鍨滈悽?Hermes AI閿涘牅绔存稉顏呮閼?DevOps 閸斺晜澧滃銉ュ徔閿涘澹傞幓蹇庣啊閼存碍婀伴敍?/p>

  • 閹跺﹥濮ら柨娆愭)韫囨鏉虹紒?Hermes AI

  • 鐎瑰啫缂撶拋顔兼躬鐠囬攱鐪版稉顓炲 timeout=30 閸欏倹鏆熼敍灞借嫙閹绘劗銇氶悽?retry 閺堝搫鍩?/li>
    from requests.adapters import HTTPAdapter
    from urllib3.util.retry import Retry

    session = requests.Session()
    retry = Retry(total=3, backoff_factor=1, status_forcelist=[403, 500, 502, 503])
    adapter = HTTPAdapter(max_retries=retry)
    session.mount("http://", adapter)
    session.mount("https://", adapter)


    閸旂姳绗?retry 閸氬函绱濋崑璺虹毜閻ㄥ嫮缍夌紒婊勫閸斻劋绡冩稉宥嗏偓鏇氱啊閵嗗倸褰熸径鏍电礉閸欐垹骞?SkillAI 閻?Token 缂傛挸鐡ㄩ崝鐔诲厴鏉╂鍏橀崙蹇撶毌闁插秴顦查柎瀛樻綀閳ユ柡鈧梻顑囨稉鈧▎陇顕Ч鍌氭倵缂傛挸鐡?Token閿涘苯鎮楃紒顓☆嚞濮瑰倻顫楅崶鐐偓?/p>

    閻楀牊婀版稉搴濈贩鐠ф牜绮忛懞?/h3>
  • Python 3.11.5

  • requests 2.31.0

  • openclaw 0.3.2

  • Hermes AI 閹绘帊娆㈤悧鍫熸拱 1.2.0

  • CUDA 12.1閿涘牏鏁ゆ禍搴㈡拱閸︾増膩閸ㄥ甯归悶鍡礉閾忕晫鍔ф潻娆愵偧濞岋紕鏁ら敍?/li>

    濞夈劍鍓伴敍姘洤閺嬫粍婀伴崷鎷岀獓濡€崇€烽敍鍫濐洤 Llama閿涘绱滳UDA 閻滎垰顣ㄩ崣姗€鍣?CUDA_VISIBLE_DEVICES 鐟曚礁宕熼悪顒冾啎缂冾噯绱濋崥锕€鍨€硅妲楅幎?CUDA OOM閵嗗倹鍨滈煪鈺勭箖閸ф垯鈧?/p>

    ---


    閹崵绮ㄦ稉搴㈡付閸氬簼绔村?/h2>

    鏉╂瑦顐肩紒蹇撳坊鐠佲晜鍨滈弰搴f閿?strong>Token 娑擃叀娴?/strong> 閺勵垵袙閸?API 鐞氼偄顣鹃妴浣虹秹缂佹粓娈х粋鑽ゆ畱鐎圭偟鏁ら弬瑙勵攳閿?strong>Hermes AI 閼宠棄鎻╅柅鐔峰瀻閺嬫劖妫╄箛妞尖偓浣哥紦鐠侇喗娓舵导妯瑰敩閻焦膩瀵繈鈧倸顩ч弸婊€缍樻稊鐔间海閸?DeepSeek API 閻?403 閹存牞绉撮弮璁圭礉鐠囨洝鐦?SkillAI 閹碱厺閲滈張顒€婀存禒锝囨倞閿涘矂鍘ゆ總?retry閿涘苯姘ㄩ懗鐣屒旂€规矮濞囬悽銊b偓?/p>

    閺堚偓閸氬函绱濇潻娆庣昂鐎圭偞鍨幎鈧褎娼甸懛顏呭灉閺冦儱鐖堕崷?skillai 缁€鎯у隘閸滃苯鎮撴禍瀣╂唉濞翠胶娈戠粔顖滅柈閿涘本鍔呴崗纾嬪彯閸欘垯浜掗幖婊€绔存稉瀣祲閸忚櫕顢嶆笟瀣ㄢ偓?/p> 閳?鏉╂柨娲栭崡姘吂