Mga Seksyon ng Base ng Kaalaman ▾

Nabigasyon

▸ Magsimula rito Ayon sa papel

Mga Kategorya

Mga Gamit 52
Glosaryo 12

Tools

OpenHands + JoinGonka Gateway: ahente sa sariling endpoint

OpenHands — isang bukas na plataporma para sa autonomous development: ang agent mismo ang nagbabasa ng repository, nagpapatakbo ng mga command, nagbabago ng mga file, at tinatapos ang gawain hanggang sa resulta, habang ikaw ang nagtatakda ng layunin at nagpapatunay ng resulta. Sa taong 2026, ang pangunahing interface nito ay Agent Canvas, isang browser-based remote kung saan pinapatakbo ang mga usapan sa agent at automation sa iyong sariling makina, sa Docker, sa server, o sa OpenHands cloud. Ang code ay bukas sa ilalim ng lisensyang MIT.

Hindi ipinipilit ng OpenHands ang modelo: ang buong layer ng pagtatrabaho sa LLM ay binuo sa LiteLLM, kaya angkop sa agent ang anumang OpenAI-compatible endpoint. Para sa JoinGonka Gateway, ito ay tatlong field sa mga setting: Custom Model — openai/deepseek-ai/DeepSeek-V4-Flash-0731, Base URL — https://gate.joingonka.ai/v1, API Key — ang iyong jg-… key. Hindi na kailangan ng hiwalay na installer: lahat ay ginagawa sa interface sa loob ng ilang minuto.

Ang autonomous agent ay ang pinakamatakaw na konsyumer ng mga token: ang bawat hakbang ay may kasamang system prompt, history, at resulta ng mga tool, at may dose-dosenang hakbang sa isang gawain. Direkta ang babala ng dokumentasyon ng OpenHands: ang agent ay nagpapadala ng maraming request sa modelo, bantayan ang pagkonsumo. Sa pamamagitan ng gateway, ang isang milyong input token ay nagkakahalaga ng $0.0069 — pareho para sa DeepSeek V4 Flash, GLM-5.3 Flash, at MiniMax M2.7 — kaya ang mga mahahabang takbo ay hindi na magiging mabigat sa budget. Pagkatapos kumpirmahin ang address, papasok ang 3M libreng token sa account: sapat na ito para patakbuhin ang agent sa isang tunay na gawain at makita ang sariling pagkonsumo.

Anong OpenHands ang mayroon ka: apat na interface at isang key

Ang proyekto ngayon ay may ilang interface, at depende sa kung alin ang tumatakbo sa iyo, nakadepende kung saan hahanapin ang mga setting ng modelo. Ang mga halaga mismo ay pare-pareho sa lahat — ang path lang ang nagkakaiba.

InterfacePaano patakbuhinSaan itatakda ang modeloStatus noong Setyembre 2026
Agent Canvasnpx @openhands/agent-canvas o npm install -g @openhands/agent-canvas at ang command na agent-canvas; bumubukas sa http://localhost:8000Settings > LLM, tab na Advancedpangunahing interface ng proyekto
OpenHands CLIuv tool install openhands --python 3.12, pagkatapos ay openhandssetup wizard sa unang pagtakbo, Ctrl+P → Settings, file na ~/.openhands/agent_settings.jsongumagana, ngunit sa README ay minarkahan bilang proyektong hindi na aktibong dine-develop
Lumang web-interface sa Dockeropenhands serve o docker run mula sa dokumentasyon; port 3000Settings → tab na LLM → switch na Advancedsa dokumentasyon ay tinawag na Local GUI (Legacy)
OpenHands Cloudmanaged cloud ng proyektoparehong pahina ng mga setting ng LLMayon sa dokumentasyon, ang sariling LLM doon ay itinakda sa parehong paraan; hindi pa namin nasusubukan ang paraang ito

Para sa Agent Canvas, kailangan ng Node.js at uv — dito tumatakbo ang lokal na server ng agent (mga detalye sa mga tagubilin sa pag-install). Ang instruksyon ay tumutukoy sa Node.js 22.12 o mas bago, ngunit ang package mismo simula sa bersyon 1.17 ay nangangailangan ng Node.js 24 o mas bago — mag-install ng 24 upang hindi makatanggap ng babala tungkol sa hindi compatible na bersyon. Mayroon ding opsyon sa container: ang image na ghcr.io/openhands/agent-canvas ay nagbibigay ng interface sa http://localhost:8000/canvas at nakikita lamang ang mga directory na iyong na-mount.

JoinGonka Key. Mag-register sa gate.joingonka.ai/register, kumpirmahin ang address, at gumawa ng key na may prefix na jg- sa seksyong "API keys". Isang key at isang balance ang gumagana para sa lahat ng mga modelo ng network. Wala ang OpenHands sa listahan ng mga tool ng installer na @joingonka/setup, at hindi ito pagkakamali: ang mga setting nito ay nasa interface at sa secure na storage ng backend, hindi sa text config na maaaring i-edit mula sa labas.

Koneksyon sa Agent Canvas: tatlong field sa tab na Advanced

Hakbang 1. Patakbuhin ang Agent Canvas at buksan ang Settings > LLM. Ang unang setup wizard ay nagmumungkahi ng sariling provider ng OpenHands — ang hakbang na ito ay maaaring laktawan, madaling bumalik sa mga setting mamaya.

Hakbang 2. I-click ang Add LLM Profile at pumunta sa tab na Advanced: ang tab na Basic ay nag-aalok lamang ng mga provider at model mula sa built-in na listahan.

Hakbang 3. Punan ang tatlong field:

FieldValue
Custom Modelopenai/deepseek-ai/DeepSeek-V4-Flash-0731
Base URLhttps://gate.joingonka.ai/v1
API Keyiyong jg-… key

Hakbang 4. I-save ang profile. Bago i-save, tinitingnan ng Canvas ang configuration sa pamamagitan ng request mula sa backend: kung ang key ay tinanggihan o ang model ay hindi available, hindi mase-save ang profile at makakakita ka ng error message.

Hakbang 5. Magsimula ng bagong usapan at magpadala ng maikling mensahe. Ang mga kasalukuyang bukas na usapan ay patuloy na tatakbo sa model kung saan sila nagsimula.

Bakit openai/. Tinutukoy ng LiteLLM ang provider batay sa prefix ng model. Ang prefix na openai/ ay hindi nangangahulugang «model mula sa OpenAI», kundi «makipag-usap sa server gamit ang OpenAI Chat Completions protocol». Ang unang segment lamang ang pinuputol, kaya ang nakakarating sa gateway ay ang tamang identifier — deepseek-ai/DeepSeek-V4-Flash-0731. Sa dokumentasyon ng OpenHands, ang parehong scheme ay ipinapakita gamit ang halimbawa ng openai/qwen/qwen3.6-35b-a3b. Kung walang prefix, tatanggihan ng LiteLLM na gumana at magpapakita ng mensaheng LLM Provider NOT provided.

Bakit /v1 at wala nang iba pa. Ang LiteLLM ay kumokonekta sa server sa pamamagitan ng opisyal na OpenAI client, at ito mismo ang nagdaragdag ng /chat/completions. Kaya naman ang address ay dapat magtapos sa /v1: kung walang suffix, ang request ay lalampas sa API, at kung may sobrang buntot, ito ay pupunta sa path na wala namang umiiral. Isa pang requirement ng Canvas: ang address ay dapat accessible mula sa backend, hindi lang mula sa browser. Ang gateway ay isang public HTTPS address, makikita ito mula sa Docker container gaya ng sa host; ang mga paraan gaya ng host.docker.internal ay kailangan lamang para sa mga model sa iyong sariling makina.

Mga profile para sa lahat ng tatlong model. Gumawa ng profile para sa bawat model ng network at pangalanan ang mga ito nang maikli — halimbawa deepseek, glm, at minimax (ang dokumentasyon ay nagbabanggit ng limitasyon na sampung profile). Maaari kang lumipat direkta sa usapan nang hindi nawawala ang context: gamit ang profile selection button sa input field o sa pamamagitan ng command na /model glm; ang /model nang walang argument ay magpapakita ng listahan. Upang hindi na ilagay ang key sa bawat profile, maaari itong i-save nang isang beses sa Provider Connections block — ito ay available sa local backend.

Dating interface sa Docker. Pareho lang ang mga field: Settings → tab na LLM → i-enable ang Advanced → Custom Model, Base URL, API Key → Save Changes.

Terminal at automation: CLI, environment variables, SDK

Ang CLI ay ini-install sa isang command gamit ang uv at sa unang pagpapatakbo ay kusa kang gagabayan sa setup ng modelo; pagkatapos, makakabalik ka rito gamit ang Ctrl+P → Settings:

uv tool install openhands --python 3.12
openhands

Para sa mga script, mas maginhawa ang mga environment variable. Mahalagang detalye: bilang default, binabalewala sila ng CLI at inilalapat lamang sa flag na --override-with-envs — para sa isang pagpapatakbo, walang iniimbak:

export LLM_MODEL="openai/deepseek-ai/DeepSeek-V4-Flash-0731"
export LLM_BASE_URL="https://gate.joingonka.ai/v1"
export LLM_API_KEY="jg-your-key"

openhands --override-with-envs

Gumagana rin ang parehong set nang walang interface — para sa CI at batch na mga gawain:

openhands --headless --override-with-envs -t "Read calc.py and tell me in one sentence whether it has a bug."

Sa headless mode, laging kumikilos ang agent nang may auto-approval, kaya patakbuhin ito kung saan pinapayagan ang lahat: sa hiwalay na direktoryo o container. Ang flag na --json ay ginagawang stream ng JSONL events ang output — maginhawa itong i-parse sa pipeline. Ganito mismo namin sinuri ang koneksyon noong Setyembre 21, 2026 sa CLI 1.16.0: sa header, ipinapakita ng CLI ang Agent initialized with model: openai/deepseek-ai/DeepSeek-V4-Flash-0731, pagkatapos ay binabasa ng agent ang file at sumasagot nang matino.

ParaanSaan gumaganaNaiimbak ba
Settings > LLM sa Agent Canvaslahat ng bagong usapan sa backend na itooo, sa storage ng backend (~/.openhands)
Wizard at Ctrl+P → Settings sa CLIlahat ng pagpapatakbo ng CLIoo, sa ~/.openhands/agent_settings.json
LLM_MODEL, LLM_BASE_URL, LLM_API_KEY na may flag na --override-with-envsisang pagpapatakbo ng CLIhindi
config.tomldating V0 lineup at development modeitinuturing na Legacy sa dokumentasyon; sa Agent Canvas at CLI 1.x, ang mga setting ay itinatakda sa mga paraang nasa itaas

Ang mga naimbak na setting ng CLI ay nasa ~/.openhands/agent_settings.json: ang modelo rito ay binabago sa pag-edit ng tatlong field ng block na llm — model, api_key at base_url. Hindi dapat gumawa ng file mula sa wala: ang unang-run wizard ay nagsusulat din doon ng iba pang setting ng agent, kasama na ang history compression, kung wala ito ay sasagad sa context window ang mahabang usapan.

Kung ini-integrate mo ang agent sa sarili mong code, tinatanggap ng OpenHands SDK ang parehong tatlong value:

from pydantic import SecretStr
from openhands.sdk import LLM

llm = LLM(
    model="openai/deepseek-ai/DeepSeek-V4-Flash-0731",
    base_url="https://gate.joingonka.ai/v1",
    api_key=SecretStr("jg-your-key"),
)

Anong modelo ang dapat piliin para sa mahahabang autonomous run

Ang presyo ng mga model sa network ay pare-pareho, kaya ang pagpili ay tungkol sa behavior. Dalawang numero ang mahalaga para sa isang autonomous agent. Context window: bawat step ay muling nagpapadala ng kasaysayan, at habang mas mahaba ang window, mas matagal na gumagana ang agent nang walang pagkawala. Response ceiling: ang step kung saan nagsusulat ang agent ng malaking file nang buo ay dapat magkasya sa isang tugon. Sa talahanayan ay ang mga resulta ng aming pagtakbo sa parehong gawain (basahin ang file at maghanap ng error) sa pamamagitan ng OpenHands CLI 1.16.0 gamit ang SDK 1.21.0.

ModelCustom Model para sa OpenHandsContextResponse ceilingBehavior sa OpenHands
DeepSeek V4 Flashopenai/deepseek-ai/DeepSeek-V4-Flash-0731380K32768Binasa ang file at sumagot nang direkta, nang walang labis na text. Ang mahabang context at pinakamataas na response ceiling sa network ay ang default na pinili para sa mga gawaing tumatagal ng maraming oras
GLM-5.3 Flashopenai/zai-org/GLM-5.3-Flash390K8192Nangangatwiran bago sumagot; nalampasan nang malinis ang cycle gamit ang mga tools. Profile para sa pagpaplano at pagsusuri ng malikot na lohika — na may pagsasaayos na ang bahagi ng sagot ay napupunta sa pangangatwiran
MiniMax M2.7openai/MiniMaxAI/MiniMax-M2.7200K8192Nalutas ang gawain, ngunit sa huling mensahe ay ipinakita nang malakas ang proseso ng pag-iisip. Ang model ay may pinakamalaking kapasidad sa network — backup profile para sa rush hour at para sa mga pamagat ng pag-uusap

Ang working scheme para sa mahabang gawain ay inuulit ang payo mula sa dokumentasyon ng OpenHands — magplano gamit ang isang model, isagawa gamit ang isa pa. Magsimula ng usapan sa glm profile at humingi ng plano nang walang pagbabago sa mga file; pagkatapos ay ipadala ang /model deepseek at magbigay ng command na isagawa. Ang kasaysayan, mga file, at estado ng gawain ay napananatili kapag nagpapalit. Panatilihin ang minimax profile bilang ikatlo: madaling lumipat dito kapag ang dalawa pang model ay wala nang kapasidad sa oras ng rush, at maaari rin ditong ibigay ang pag-generate ng mga pamagat ng pag-uusap sa Settings > Application.

Compression ng kasaysayan. Kahit ang window na may daan-daang libong tokens ay limitado sa isang mahabang gawain. Sa OpenHands, ang condenser ang responsable para dito: pinagsasama nito ang mga lumang kaganapan sa isang maikling buod, na ayon sa dokumentasyon, ay nagpapababa ng latency at pagkonsumo ng token sa mahahabang pag-uusap. Sa Agent Canvas, maaari itong i-configure sa seksyong Settings > Condenser; sa aming CLI run, kusa itong na-enable, na may threshold na 80 events.

Mga limitasyon ng model. Kinukuha ng OpenHands ang context window at response ceiling mula sa LiteLLM directory, ngunit walang network identifiers ng Gonka dito (sinuri namin sa LiteLLM 1.81), kaya walang sariling values ang agent para sa mga model na ito. Hindi ito nakakaabala sa trabaho: ang gateway mismo ang naglalapat ng response ceiling ayon sa talahanayan sa itaas. Kung nais mong itakda nang malinaw ang mga limitasyon — sa SDK ang mga field ay max_input_tokens at max_output_tokens, at sa Canvas, ang tab na All ay nagbubukas ng kumpletong hanay ng mga profile field. Ang mga detalye tungkol sa default model ay nasa pagsusuri ng DeepSeek V4 Flash.

Pag-verify at mga madalas na error

Maaari mong matiyak na ang mga request ay dumadaan talaga sa gateway mula sa dalawang panig. Mula sa panig ng OpenHands — isang bagong usapan at isang maikling gawain tulad ng "basahin ang README at ibuod sa isang pangungusap": ang agent ay dapat tumawag ng tool at sumagot. Mula sa panig ng gateway — sa cabinet, sa seksyong "Paggamit" (Usage): lalabas ang request sa breakdown na "By models", at sa block na "By keys" ay mag-a-update ang oras ng huling request. Kung blanko — ibig sabihin, ang usapan ay nasa ibang profile: tingnan kung alin sa mga ito ang nakaset na aktibo.

Ano ang nakikitaAno ang ibig sabihin nitoAno ang dapat gawin
LLM Provider NOT providedWalang prefix ng provider sa model fieldIlagay ang openai/ bago ang identifier: openai/deepseek-ai/DeepSeek-V4-Flash-0731
Hindi nasasave ang profile, nagpapakita ang Canvas ng backend errorSinuri ng Canvas ang configuration gamit ang live request at nakatanggap ng pagtanggiAng error text ay isa sa mga linya sa ibaba: ayusin ang key, address, o model at i-save muli
AuthenticationError … Invalid API keySumagot ang gateway ng 401: hindi tinanggap ang keyI-paste ang buong key, nang walang espasyo sa mga gilid; suriin sa cabinet kung ito ay hindi binawi
405 Not Allowed at nginx HTML pageWalang suffix na /v1 sa Base URLAng address ay dapat eksaktong https://gate.joingonka.ai/v1
404 … Invalid URL (POST /v1/v1/chat/completions)May sobrang buntot sa Base URL: pangalawang /v1 o ang buong path na /chat/completionsIwanan lang ang /v1 — ang path ay awtomatikong idinaragdag ng LiteLLM
400 … Model "…" not found. Available: …Ang identifier pagkatapos ng openai/ ay hindi tumugma sa kahit anong model sa networkAng gateway mismo ang naglilista ng mga available; ang buong listahan ay GET https://gate.joingonka.ai/v1/models
429Naubos na ang minutong limit ng request ng key o kaya ay puno ang kapasidad ng model sa oras ng rushAng OpenHands mismo ang nagrere-retry ng request nang may papalaking pause. Kung natatagalan — lumipat ng profile gamit ang command na /model; ang status ng network ay makikita sa status page
402Walang pondo sa balanseMag-top up sa seksyong "Billing"; ang key ay nananatiling gumagana
Sumasagot ang agent gaya ng isang chatbot: hindi ginagalaw ang mga file, nalilito sa pagtawag ng toolsHindi kaya ng model ang agentic cycle; pinapayo ng dokumentasyon ng OpenHands na magpalit ng model sa ganitong sitwasyonLumipat sa profile na DeepSeek V4 Flash — sa aming run ay nakapasa ito sa agentic cycle nang walang puna

Ayon sa dokumentasyon ng OpenHands, ang bilang ng retries at ang pause sa pagitan ng mga ito sa oras ng 429 ay nako-configure gamit ang mga variable na LLM_NUM_RETRIES, LLM_RETRY_MIN_WAIT at LLM_RETRY_MAX_WAIT. Ang default values sa dokumentasyon at sa SDK ay magkaiba, kaya magbase sa aktwal na nakikita: sa status ng usapan ng CLI 1.16.0, nakakita kami ng 5 pagtatangka na may pause mula 8 hanggang 64 na segundo.

Magkano ang halaga nito at ano ang dapat isaalang-alang sa trabaho

Sa pamamagitan ng JoinGonka Gateway, ang mga token ay nagkakahalaga ng $0.0069 bawat milyon sa input at $0.021 bawat milyon sa output — ang presyo ay pareho para sa lahat ng mga model sa network at kinukuha sa pahinang ito mula sa live source.

ScenarioGastosSa pamamagitan ng Gateway
Isang beses na gawain: intindihin ang file, mag-editsampung libong tokenbarya-barya
Autonomous feature refinement20-50M tokensampung sentimo
Isang araw ng background automation~150M tokenhalos isang dolyar

Ang mga pagtatantya sa kanang kolum ay batay sa mga presyo noong Setyembre 2026; kung paano gumagana ang ekonomiya ng mga agent ay detalyadong tinalakay sa artikulo tungkol sa pinakamurang API para sa mga AI agent.

Limitasyon sa gastos. Pinapayo ng OpenHands ang pagtatakda ng mga limitasyon sa paggastos — sa gateway ay built-in na ito sa mismong payment model: ang balanse ay prepaid, at hindi gagastos ang agent nang higit pa sa nasa account. Ang natitirang balanse at gastos bawat araw ay makikita sa cabinet. Para sa CI at background automation, gumawa ng hiwalay na key upang hindi humalo ang gastos nito sa iyo; ang mga sub-key na may daily limit ay inilarawan sa artikulo tungkol sa Management Keys.

Hangganan ng tiwala. Ang Agent Canvas, na pinapatakbo sa pamamagitan ng npm, ay gumagana gamit ang mga karapatan ng iyong user at nakikita ang buong file system. Para sa code ng ibang tao, gamitin ang bersyon sa Docker: makikita lang ng agent ang naka-mount na directory. Ito ay katangian mismo ng OpenHands, hindi ito nakadepende sa model provider.

Ang usapan ay nananatili sa iyo. Ang history ng usapan ay iniimbak ng OpenHands sa sarili nito, sa ~/.openhands, at ipinapadala ito sa model sa bawat hakbang; hindi iniimbak ng gateway ang usapan — ang iyong mga prompt at code ay hindi naiiiwan dito pagkatapos sumagot.

Kung may mga larawan ang gawain — mga screenshot ng interface, diagram — gumawa ng hiwalay na profile para dito na may vision-model: ang mga model ng network ng Gonka ay text-based. Para sa code, command, at mga file, hindi ito isang limitasyon.

Ang OpenHands ay kumokonekta sa JoinGonka Gateway gamit ang tatlong field: Custom Model openai/deepseek-ai/DeepSeek-V4-Flash-0731, Base URL https://gate.joingonka.ai/v1 at key na jg-…. Sa Agent Canvas, ito ay ang tab na Advanced sa Settings > LLM, sa CLI ay ang setup wizard o mga environment variable na LLM_MODEL, LLM_BASE_URL at LLM_API_KEY na may flag na --override-with-envs; ang config.toml ay nananatili sa nakaraang serye. Ang prefix na openai/ ay pumipili ng protocol, hindi ng vendor, at ang suffix na /v1 ay mandatory. Kinumpirma ng live run ang agent cycle sa lahat ng tatlong modelo ng network: bilang default, gamitin ang DeepSeek V4 Flash na may 380K na konteksto at tugon na hanggang 32768 token, GLM-5.3 Flash para sa pagpaplano, at MiniMax M2.7 bilang backup profile para sa peak hours.

Gusto mo pang matuto?

Galugarin ang iba pang mga seksyon o simulang kumita ng GNK ngayon.

Kumuha ng key at mga libreng token →