providers.mdx 46 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981
  1. ---
  2. title: Udbydere
  3. description: Brug en hvilken som helst LLM-udbyder i OpenCode.
  4. ---
  5. import config from "../../../../config.mjs"
  6. export const console = config.console
  7. OpenCode bruger [AI SDK](https://ai-sdk.dev/) og [Models.dev](https://models.dev) til at understøtte **75+ LLM-udbydere** og understøtter kørsel af lokale modeller.
  8. For at tilføje en udbyder skal du:
  9. 1. Tilføje API-nøglerne for udbyderen ved at bruge kommandoen `/connect`.
  10. 2. Konfigurere udbyderen i OpenCode-konfigurationen.
  11. ---
  12. ### Legitimationsoplysninger
  13. Når du tilføjer en udbyders API-nøgler med `/connect`-kommandoen, gemmes de i `~/.local/share/opencode/auth.json`.
  14. ---
  15. ### Konfiguration
  16. Du kan tilpasse udbyderne gennem `provider`-delen i OpenCode-konfigurationen.
  17. ---
  18. #### Base URL
  19. Du kan tilpasse base URL for enhver udbyder ved at angive muligheden `baseURL`. Dette er nyttigt, når du bruger proxy-tjenester eller tilpassede endpoints.
  20. ```json title="opencode.json" {6}
  21. {
  22. "$schema": "https://opencode.ai/config.json",
  23. "provider": {
  24. "anthropic": {
  25. "options": {
  26. "baseURL": "https://api.anthropic.com/v1"
  27. }
  28. }
  29. }
  30. }
  31. ```
  32. ---
  33. ## OpenCode Zen
  34. OpenCode Zen er en liste over modeller leveret af OpenCode-teamet, som er blevet testet og verificeret til at fungere godt med OpenCode. [Læs mere](/docs/zen).
  35. :::tip
  36. Hvis du er ny, anbefaler vi at starte med OpenCode Zen.
  37. :::
  38. 1. Kør kommandoen `/connect` i TUI, vælg opencode og gå til [opencode.ai/auth](https://opencode.ai/auth).
  39. ```txt
  40. /connect
  41. ```
  42. 2. Log ind, tilføj dine faktureringsoplysninger og kopier API-nøglen.
  43. 3. Indsæt API-nøglen.
  44. ```txt
  45. ┌ API key
  46. └ enter
  47. ```
  48. 4. Kør `/models` i TUI for at se listen over modeller, vi anbefaler.
  49. ```txt
  50. /models
  51. ```
  52. Det fungerer som alle andre udbydere i OpenCode og er helt valgfrit at bruge.
  53. ---
  54. ## OpenCode Go
  55. OpenCode Go er en billig abonnementsplan, der giver pålidelig adgang til populære åbne kodningsmodeller leveret af OpenCode-teamet, som er testet og verificeret til at fungere godt med OpenCode.
  56. 1. Kør kommandoen `/connect` i TUI, vælg `OpenCode Go`, og gå til [opencode.ai/auth](https://opencode.ai/zen).
  57. ```txt
  58. /connect
  59. ```
  60. 2. Log ind, tilføj dine faktureringsoplysninger og kopier din API-nøgle.
  61. 3. Indsæt din API-nøgle.
  62. ```txt
  63. ┌ API key
  64. └ enter
  65. ```
  66. 4. Kør `/models` i TUI for at se listen over modeller, vi anbefaler.
  67. ```txt
  68. /models
  69. ```
  70. Det fungerer som alle andre udbydere i OpenCode og er helt valgfrit at bruge.
  71. ---
  72. ## Katalog
  73. Lad os se på nogle af udbyderne i detaljer. Hvis du vil tilføje en udbyder til listen, er du velkommen til at åbne en PR.
  74. :::note
  75. Ser du ikke en udbyder her? Indsend en PR.
  76. :::
  77. ---
  78. ### 302.AI
  79. 1. Gå til [302.AI-konsollen](https://302.ai/), opret en konto og generer en API-nøgle.
  80. 2. Kør kommandoen `/connect` og søg efter **302.AI**.
  81. ```txt
  82. /connect
  83. ```
  84. 3. Indtast 302.AI API-nøglen.
  85. ```txt
  86. ┌ API key
  87. └ enter
  88. ```
  89. 4. Kør kommandoen `/models` for at vælge en model.
  90. ```txt
  91. /models
  92. ```
  93. ---
  94. ### Amazon Bedrock
  95. Sådan bruger du Amazon Bedrock med OpenCode:
  96. 1. Gå til **modelkataloget** i Amazon Bedrock-konsollen og anmod om adgang til de modeller, du ønsker.
  97. :::tip
  98. Du skal have adgang til modellen du ønsker i Amazon Bedrock.
  99. :::
  100. 2. **Konfigurer godkendelse** ved at bruge en af følgende metoder:
  101. #### Miljøvariabler (hurtigstart)
  102. Angiv en af disse miljøvariabler, mens du kører opencode:
  103. ```bash
  104. # Option 1: Using AWS access keys
  105. AWS_ACCESS_KEY_ID=XXX AWS_SECRET_ACCESS_KEY=YYY opencode
  106. # Option 2: Using named AWS profile
  107. AWS_PROFILE=my-profile opencode
  108. # Option 3: Using Bedrock bearer token
  109. AWS_BEARER_TOKEN_BEDROCK=XXX opencode
  110. ```
  111. Eller tilføj dem til din bash-profil:
  112. ```bash title="~/.bash_profile"
  113. export AWS_PROFILE=my-dev-profile
  114. export AWS_REGION=us-east-1
  115. ```
  116. #### Konfigurationsfil (anbefalet)
  117. For projektspecifik eller vedvarende konfiguration, brug `opencode.json`:
  118. ```json title="opencode.json"
  119. {
  120. "$schema": "https://opencode.ai/config.json",
  121. "provider": {
  122. "amazon-bedrock": {
  123. "options": {
  124. "region": "us-east-1",
  125. "profile": "my-aws-profile"
  126. }
  127. }
  128. }
  129. }
  130. ```
  131. **Tilgængelige muligheder:**
  132. - `region` - AWS region (f.eks. `us-east-1`, `eu-west-1`)
  133. - `profile` - AWS navngivet profil fra `~/.aws/credentials`
  134. - `endpoint` - Brugerdefineret endpoint URL for VPC endpoints (alias for generisk `baseURL`-mulighed)
  135. :::tip
  136. Konfigurationsfil-muligheder har forrang over miljøvariabler.
  137. :::
  138. #### Avanceret: VPC Endpoints
  139. Hvis du bruger VPC endpoints for Bedrock:
  140. ```json title="opencode.json"
  141. {
  142. "$schema": "https://opencode.ai/config.json",
  143. "provider": {
  144. "amazon-bedrock": {
  145. "options": {
  146. "region": "us-east-1",
  147. "profile": "production",
  148. "endpoint": "https://bedrock-runtime.us-east-1.vpce-xxxxx.amazonaws.com"
  149. }
  150. }
  151. }
  152. }
  153. ```
  154. :::note
  155. Muligheden `endpoint` er et alias for den generiske mulighed `baseURL`, der bruger AWS-specifik terminologi. Hvis både `endpoint` og `baseURL` er specificeret, har `endpoint` forrang.
  156. :::
  157. #### Godkendelsesmetoder
  158. - **`AWS_ACCESS_KEY_ID` / `AWS_SECRET_ACCESS_KEY`**: Opret en IAM-bruger og generer adgangsnøgler i AWS-konsollen
  159. - **`AWS_PROFILE`**: Brug navngivne profiler fra `~/.aws/credentials`. Konfigurer først med `aws configure --profile my-profile` eller `aws sso login`
  160. - **`AWS_BEARER_TOKEN_BEDROCK`**: Generer langsigtede API-nøgler fra Amazon Bedrock-konsollen
  161. - **`AWS_WEB_IDENTITY_TOKEN_FILE` / `AWS_ROLE_ARN`**: For EKS IRSA (IAM roller for tjenestekonti) eller andre Kubernetes-miljøer med OIDC føderation. Disse miljøvariabler injiceres automatisk af Kubernetes, når du bruger tjenestekontokommentarer.
  162. #### Godkendelsesprioritet
  163. Amazon Bedrock bruger følgende godkendelsesprioritet:
  164. 1. **Bearer Token** - `AWS_BEARER_TOKEN_BEDROCK` miljøvariabel eller token fra kommandoen `/connect`
  165. 2. **AWS legitimationskæde** - profil, adgangsnøgler, delte legitimationsoplysninger, IAM roller, webidentitetstokens (EKS IRSA), instansmetadata
  166. :::note
  167. Når et bearer token er angivet (via `/connect` eller `AWS_BEARER_TOKEN_BEDROCK`), har det forrang over alle AWS godkendelsesmetoder inklusiv konfigurerede profiler.
  168. :::
  169. 3. Kør kommandoen `/models` for at vælge den model, du ønsker.
  170. ```txt
  171. /models
  172. ```
  173. :::note
  174. For brugerdefinerede inferensprofiler, brug modellen og udbydernavnet i nøglen og sæt egenskaben `id` til arn. Dette sikrer korrekt caching:
  175. ```json title="opencode.json"
  176. {
  177. "$schema": "https://opencode.ai/config.json",
  178. "provider": {
  179. "amazon-bedrock": {
  180. // ...
  181. "models": {
  182. "anthropic-claude-sonnet-4.5": {
  183. "id": "arn:aws:bedrock:us-east-1:xxx:application-inference-profile/yyy"
  184. }
  185. }
  186. }
  187. }
  188. }
  189. ```
  190. :::
  191. ---
  192. ### Anthropic
  193. 1. Når du har registreret dig, kør kommandoen `/connect` og vælg Anthropic.
  194. ```txt
  195. /connect
  196. ```
  197. 2. Her kan du vælge muligheden **Claude Pro/Max**, og det vil åbne din browser og bede dig om at godkende.
  198. ```txt
  199. ┌ Select auth method
  200. │ Claude Pro/Max
  201. │ Create an API Key
  202. │ Manually enter API Key
  203. ```
  204. 3. Nu skal alle de Anthropiske modeller være tilgængelige, når du bruger kommandoen `/models`.
  205. ```txt
  206. /models
  207. ```
  208. :::info
  209. At bruge dit Claude Pro/Max-abonnement i OpenCode understøttes ikke officielt af [Anthropic](https://anthropic.com).
  210. :::
  211. ##### Brug API-nøgler
  212. Du kan også vælge **Create an API Key**, hvis du ikke har et Pro/Max-abonnement. Det åbner også din browser og beder dig logge på Anthropic og giver dig en kode, du kan indsætte i din terminal.
  213. Eller hvis du allerede har en API-nøgle, kan du vælge **Manually enter API Key** og indsætte den i terminalen.
  214. ---
  215. ### Atomic Chat
  216. Du kan konfigurere opencode til at bruge lokale modeller via [Atomic Chat](https://atomic.chat) — en desktopapplikation, der kører lokale LLM'er bag en OpenAI-kompatibel API-server (standard-endpoint `http://127.0.0.1:1337/v1`).
  217. ```json title="opencode.json" "atomic-chat" {5, 6, 8, 10-14}
  218. {
  219. "$schema": "https://opencode.ai/config.json",
  220. "provider": {
  221. "atomic-chat": {
  222. "npm": "@ai-sdk/openai-compatible",
  223. "name": "Atomic Chat (local)",
  224. "options": {
  225. "baseURL": "http://127.0.0.1:1337/v1"
  226. },
  227. "models": {
  228. "<your-model-id>": {
  229. "name": "<your-model-name>"
  230. }
  231. }
  232. }
  233. }
  234. }
  235. ```
  236. I dette eksempel:
  237. - `atomic-chat` er det brugerdefinerede udbyder-ID. Det kan være en vilkårlig streng.
  238. - `npm` specificerer pakken, der skal bruges for denne udbyder. Her bruges `@ai-sdk/openai-compatible` til enhver OpenAI-kompatibel API.
  239. - `name` er det viste navn på udbyderen i grænsefladen.
  240. - `options.baseURL` er endpoint'et for den lokale server. Ændr vært og port for at matche din Atomic Chat-opsætning.
  241. - `models` er en afbildning af model-ID'er til deres viste navne. Hvert ID skal matche det `id`, der returneres af `GET /v1/models` — kør `curl http://127.0.0.1:1337/v1/models` for at liste ID'erne, der i øjeblikket er indlæst i Atomic Chat.
  242. :::tip
  243. Hvis værktøjskald ikke fungerer godt, så vælg en indlæst model med god tool calling-understøttelse (for eksempel en Qwen-Coder- eller DeepSeek-Coder-variant).
  244. :::
  245. ---
  246. ### Azure OpenAI
  247. :::note
  248. Hvis du støder på "Beklager, men jeg kan ikke hjælpe med den anmodning"-fejl, kan du prøve at ændre indholdsfilteret fra **DefaultV2** til **Default** i Azure-ressourcen.
  249. :::
  250. 1. Gå til [Azure-portalen](https://portal.azure.com/) og opret en **Azure OpenAI**-ressource. Du skal bruge:
  251. - **Ressourcenavn**: Dette bliver en del af API-endpointet (`https://RESOURCE_NAME.openai.azure.com/`)
  252. - **API-nøgle**: Enten `KEY 1` eller `KEY 2` fra din ressource
  253. 2. Gå til [Azure AI Foundry](https://ai.azure.com/) og distribuer en model.
  254. :::note
  255. Distributionsnavnet skal matche modelnavnet for at opencode skal fungere korrekt.
  256. :::
  257. 3. Kør kommandoen `/connect` og søg efter **Azure**.
  258. ```txt
  259. /connect
  260. ```
  261. 4. Indtast API-nøglen.
  262. ```txt
  263. ┌ API key
  264. └ enter
  265. ```
  266. 5. Angiv dit ressourcenavn som en miljøvariabel:
  267. ```bash
  268. AZURE_RESOURCE_NAME=XXX opencode
  269. ```
  270. Eller tilføj den til din bash-profil:
  271. ```bash title="~/.bash_profile"
  272. export AZURE_RESOURCE_NAME=XXX
  273. ```
  274. 6. Kør kommandoen `/models` for at vælge den distribuerede model.
  275. ```txt
  276. /models
  277. ```
  278. ---
  279. ### Azure Cognitive Services
  280. 1. Gå til [Azure-portalen](https://portal.azure.com/) og opret en **Azure OpenAI**-ressource. Du skal bruge:
  281. - **Ressourcenavn**: Dette bliver en del af API-endpointet (`https://AZURE_COGNITIVE_SERVICES_RESOURCE_NAME.cognitiveservices.azure.com/`)
  282. - **API-nøgle**: Enten `KEY 1` eller `KEY 2` fra din ressource
  283. 2. Gå til [Azure AI Foundry](https://ai.azure.com/) og distribuer en model.
  284. :::note
  285. Distributionsnavnet skal matche modelnavnet for at opencode skal fungere korrekt.
  286. :::
  287. 3. Kør kommandoen `/connect` og søg efter **Azure Cognitive Services**.
  288. ```txt
  289. /connect
  290. ```
  291. 4. Indtast API-nøglen.
  292. ```txt
  293. ┌ API key
  294. └ enter
  295. ```
  296. 5. Angiv dit ressourcenavn som en miljøvariabel:
  297. ```bash
  298. AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX opencode
  299. ```
  300. Eller tilføj den til din bash-profil:
  301. ```bash title="~/.bash_profile"
  302. export AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX
  303. ```
  304. 6. Kør kommandoen `/models` for at vælge den distribuerede model.
  305. ```txt
  306. /models
  307. ```
  308. ---
  309. ### Baseten
  310. 1. Gå til [Baseten](https://app.baseten.co/), opret en konto og generer en API-nøgle.
  311. 2. Kør kommandoen `/connect` og søg efter **Baseten**.
  312. ```txt
  313. /connect
  314. ```
  315. 3. Indtast din Baseten API-nøgle.
  316. ```txt
  317. ┌ API key
  318. └ enter
  319. ```
  320. 4. Kør kommandoen `/models` for at vælge en model.
  321. ```txt
  322. /models
  323. ```
  324. ---
  325. ### Cerebras
  326. 1. Gå til [Cerebras-konsollen](https://inference.cerebras.ai/), opret en konto og generer en API-nøgle.
  327. 2. Kør kommandoen `/connect` og søg efter **Cerebras**.
  328. ```txt
  329. /connect
  330. ```
  331. 3. Indtast Cerebras API-nøglen.
  332. ```txt
  333. ┌ API key
  334. └ enter
  335. ```
  336. 4. Kør kommandoen `/models` for at vælge en model som _Qwen 3 Coder 480B_.
  337. ```txt
  338. /models
  339. ```
  340. ---
  341. ### Cloudflare AI Gateway
  342. Cloudflare AI Gateway lader dig få adgang til modeller fra OpenAI, Anthropic, Workers AI og flere gennem et samlet endpoint. Med [Unified Billing](https://developers.cloudflare.com/ai-gateway/features/unified-billing/) behøver du ikke separate API-nøgler for hver udbyder.
  343. 1. Gå til [Cloudflare-dashboardet](https://dash.cloudflare.com/), naviger til **AI** > **AI Gateway**, og opret en ny gateway.
  344. 2. Angiv konto-ID og gateway-ID som miljøvariabler.
  345. ```bash title="~/.bash_profile"
  346. export CLOUDFLARE_ACCOUNT_ID=your-32-character-account-id
  347. export CLOUDFLARE_GATEWAY_ID=your-gateway-id
  348. ```
  349. 3. Kør kommandoen `/connect` og søg efter **Cloudflare AI Gateway**.
  350. ```txt
  351. /connect
  352. ```
  353. 4. Indtast din Cloudflare API-token.
  354. ```txt
  355. ┌ API key
  356. └ enter
  357. ```
  358. Eller angiv den som en miljøvariabel.
  359. ```bash title="~/.bash_profile"
  360. export CLOUDFLARE_API_TOKEN=your-api-token
  361. ```
  362. 5. Kør kommandoen `/models` for at vælge en model.
  363. ```txt
  364. /models
  365. ```
  366. Du kan også tilføje modeller gennem opencode-konfigurationen.
  367. ```json title="opencode.json"
  368. {
  369. "$schema": "https://opencode.ai/config.json",
  370. "provider": {
  371. "cloudflare-ai-gateway": {
  372. "models": {
  373. "openai/gpt-4o": {},
  374. "anthropic/claude-sonnet-4": {}
  375. }
  376. }
  377. }
  378. }
  379. ```
  380. ---
  381. ### Cortecs
  382. 1. Gå til [Cortecs-konsollen](https://cortecs.ai/), opret en konto og generer en API-nøgle.
  383. 2. Kør kommandoen `/connect` og søg efter **Cortecs**.
  384. ```txt
  385. /connect
  386. ```
  387. 3. Indtast Cortecs API-nøglen.
  388. ```txt
  389. ┌ API key
  390. └ enter
  391. ```
  392. 4. Kør kommandoen `/models` for at vælge en model som _Kimi K2 Instruct_.
  393. ```txt
  394. /models
  395. ```
  396. ---
  397. ### DeepSeek
  398. 1. Gå til [DeepSeek-konsollen](https://platform.deepseek.com/), opret en konto og klik på **Create API Key**.
  399. 2. Kør kommandoen `/connect` og søg efter **DeepSeek**.
  400. ```txt
  401. /connect
  402. ```
  403. 3. Indtast DeepSeek API-nøglen.
  404. ```txt
  405. ┌ API key
  406. └ enter
  407. ```
  408. 4. Kør kommandoen `/models` for at vælge en DeepSeek-model som _DeepSeek V4 Pro_.
  409. ```txt
  410. /models
  411. ```
  412. ---
  413. ### Deep Infra
  414. 1. Gå til [Deep Infra-dashboardet](https://deepinfra.com/dash), opret en konto og generer en API-nøgle.
  415. 2. Kør kommandoen `/connect` og søg efter **Deep Infra**.
  416. ```txt
  417. /connect
  418. ```
  419. 3. Indtast Deep Infra API-nøglen.
  420. ```txt
  421. ┌ API key
  422. └ enter
  423. ```
  424. 4. Kør kommandoen `/models` for at vælge en model.
  425. ```txt
  426. /models
  427. ```
  428. ---
  429. ### FrogBot
  430. 1. Gå til [FrogBot dashboard](https://app.frogbot.ai/signup), opret en konto og generer en API-nøgle.
  431. 2. Kør kommandoen `/connect` og søg efter **FrogBot**.
  432. ```txt
  433. /connect
  434. ```
  435. 3. Indtast frogbot API-nøglen.
  436. ```txt
  437. ┌ API key
  438. └ enter
  439. ```
  440. 4. Kør kommandoen `/models` for at vælge en model.
  441. ```txt
  442. /models
  443. ```
  444. ---
  445. ### Fireworks AI
  446. 1. Gå til [Fireworks AI-konsollen](https://app.fireworks.ai/), opret en konto og klik på **Create API Key**.
  447. 2. Kør kommandoen `/connect` og søg efter **Fireworks AI**.
  448. ```txt
  449. /connect
  450. ```
  451. 3. Indtast Fireworks AI API-nøglen.
  452. ```txt
  453. ┌ API key
  454. └ enter
  455. ```
  456. 4. Kør kommandoen `/models` for at vælge en model som _Kimi K2 Instruct_.
  457. ```txt
  458. /models
  459. ```
  460. ---
  461. ### GitLab Duo
  462. GitLab Duo giver AI-drevet agentchat med native værktøjskaldsfunktioner gennem GitLabs anthropiske proxy.
  463. 1. Kør kommandoen `/connect` og vælg GitLab.
  464. ```txt
  465. /connect
  466. ```
  467. 2. Vælg din godkendelsesmetode:
  468. ```txt
  469. ┌ Select auth method
  470. │ OAuth (Recommended)
  471. │ Personal Access Token
  472. ```
  473. #### Brug OAuth (anbefalet)
  474. Vælg **OAuth** og din browser åbner for autorisation.
  475. #### Brug personlig adgangstoken
  476. 1. Gå til [GitLab User Settings > Access Tokens](https://gitlab.com/-/user_settings/personal_access_tokens)
  477. 2. Klik på **Add new token**
  478. 3. Navn: `OpenCode`, omfang: `api`
  479. 4. Kopier tokenet (starter med `glpat-`)
  480. 5. Indtast den i terminalen
  481. 3. Kør kommandoen `/models` for at se tilgængelige modeller.
  482. ```txt
  483. /models
  484. ```
  485. Tre Claude-baserede modeller er tilgængelige:
  486. - **duo-chat-haiku-4-5** (standard) - Hurtige svar til hurtige opgaver
  487. - **duo-chat-sonnet-4-5** - Balanceret ydeevne til de fleste arbejdsgange
  488. - **duo-chat-opus-4-5** - Mest egnet til kompleks analyse
  489. :::note
  490. Du kan også specificere 'GITLAB_TOKEN' miljøvariabel, hvis du ikke vil
  491. gemme tokenet i opencode auth-lagring.
  492. :::
  493. ##### Selvhostet GitLab
  494. :::note[overholdelsesbemærkning]
  495. OpenCode bruger en lille model til nogle AI-opgaver som at generere sessionstitlen.
  496. Den er konfigureret til at bruge gpt-5-nano som standard, hostet af Zen. For at låse OpenCode
  497. til kun at bruge din egen GitLab-hostede instans, tilføj følgende i din
  498. `opencode.json` fil. Det anbefales også at deaktivere sessionsdeling.
  499. ```json
  500. {
  501. "$schema": "https://opencode.ai/config.json",
  502. "small_model": "gitlab/duo-chat-haiku-4-5",
  503. "share": "disabled"
  504. }
  505. ```
  506. :::
  507. For selvhostede GitLab-instanser:
  508. ```bash
  509. export GITLAB_INSTANCE_URL=https://gitlab.company.com
  510. export GITLAB_TOKEN=glpat-...
  511. ```
  512. Hvis din instans kører en brugerdefineret AI-gateway:
  513. ```bash
  514. GITLAB_AI_GATEWAY_URL=https://ai-gateway.company.com
  515. ```
  516. Eller tilføj til din bash-profil:
  517. ```bash title="~/.bash_profile"
  518. export GITLAB_INSTANCE_URL=https://gitlab.company.com
  519. export GITLAB_AI_GATEWAY_URL=https://ai-gateway.company.com
  520. export GITLAB_TOKEN=glpat-...
  521. ```
  522. :::note
  523. Din GitLab-administrator skal aktivere følgende:
  524. 1. [Duo Agent Platform](https://docs.gitlab.com/user/duo_agent_platform/turn_on_off/) for brugeren, gruppen eller instansen
  525. 2. Funktionsflag (via Rails-konsollen):
  526. - `agent_platform_claude_code`
  527. - `third_party_agents_enabled`
  528. :::
  529. ##### OAuth for selvhostede instanser
  530. For at få Oauth til at fungere for din selvhostede instans, skal du oprette
  531. en ny applikation (Indstillinger → Applikationer) med
  532. callback URL `http://127.0.0.1:8080/callback` og følgende omfang:
  533. - api (Få adgang til API på dine vegne)
  534. - read_user (Læs din personlige information)
  535. - read_repository (tillader skrivebeskyttet adgang til depotet)
  536. Udsæt derefter applikations-ID som miljøvariabel:
  537. ```bash
  538. export GITLAB_OAUTH_CLIENT_ID=your_application_id_here
  539. ```
  540. Mere dokumentation på [opencode-gitlab-auth](https://www.npmjs.com/package/opencode-gitlab-auth) hjemmesiden.
  541. ##### Konfiguration
  542. Tilpas gennem `opencode.json`:
  543. ```json title="opencode.json"
  544. {
  545. "$schema": "https://opencode.ai/config.json",
  546. "provider": {
  547. "gitlab": {
  548. "options": {
  549. "instanceUrl": "https://gitlab.com"
  550. }
  551. }
  552. }
  553. }
  554. ```
  555. ##### GitLab API-værktøjer (valgfrit, men stærkt anbefalet)
  556. For at få adgang til GitLab-værktøjer (merge requests, problemer, pipelines, CI/CD, etc.):
  557. ```json title="opencode.json"
  558. {
  559. "$schema": "https://opencode.ai/config.json",
  560. "plugin": ["opencode-gitlab-plugin"]
  561. }
  562. ```
  563. Denne plugin giver omfattende GitLab-repository-administrationsfunktioner, inklusiv MR-anmeldelser, problemsporing, pipeline-overvågning og mere.
  564. ---
  565. ### GitHub Copilot
  566. Sådan bruger du GitHub Copilot-abonnementet med OpenCode:
  567. :::note
  568. Nogle modeller kan kræve et [Pro+
  569. abonnement](https://github.com/features/copilot/plans) at bruge.
  570. Nogle modeller skal aktiveres manuelt i [GitHub Copilot-indstillingerne](https://docs.github.com/en/copilot/how-tos/use-ai-models/configure-access-to-ai-models#setup-for-individual-use).
  571. :::
  572. 1. Kør kommandoen `/connect` og søg efter GitHub Copilot.
  573. ```txt
  574. /connect
  575. ```
  576. 2. Naviger til [github.com/login/device](https://github.com/login/device) og indtast koden.
  577. ```txt
  578. ┌ Login with GitHub Copilot
  579. │ https://github.com/login/device
  580. │ Enter code: 8F43-6FCF
  581. │ Waiting for authorization...
  582. ```
  583. 3. Kør nu kommandoen `/models` for at vælge modellen du ønsker.
  584. ```txt
  585. /models
  586. ```
  587. ---
  588. ### Google Vertex AI
  589. Sådan bruger du Google Vertex AI med OpenCode:
  590. 1. Gå til **Model Garden** i Google Cloud Console og tjek
  591. modeller tilgængelig i din region.
  592. :::note
  593. Du skal have et Google Cloud-projekt med Vertex AI API aktiveret.
  594. :::
  595. 2. Angiv de nødvendige miljøvariabler:
  596. - `GOOGLE_CLOUD_PROJECT`: Dit Google Cloud-projekt ID
  597. - `VERTEX_LOCATION` (valgfrit): Regionen for Vertex AI (standard til `global`)
  598. - Godkendelse (vælg en):
  599. - `GOOGLE_APPLICATION_CREDENTIALS`: Sti til tjenestekontoens JSON-nøglefil
  600. - Godkend med gcloud CLI: `gcloud auth application-default login`
  601. Sæt dem mens du kører opencode.
  602. ```bash
  603. GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json GOOGLE_CLOUD_PROJECT=your-project-id opencode
  604. ```
  605. Eller tilføj dem til din bash-profil.
  606. ```bash title="~/.bash_profile"
  607. export GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json
  608. export GOOGLE_CLOUD_PROJECT=your-project-id
  609. export VERTEX_LOCATION=global
  610. ```
  611. :::tip
  612. `global`-regionen forbedrer tilgængeligheden og reducerer fejl uden ekstra omkostninger. Brug regionale endpoints (f.eks. `us-central1`) for krav til dataophold. [Læs mere](https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models#regional_and_global_endpoints)
  613. :::
  614. 3. Kør kommandoen `/models` for at vælge modellen du ønsker.
  615. ```txt
  616. /models
  617. ```
  618. ---
  619. ### Groq
  620. 1. Gå til [Groq-konsollen](https://console.groq.com/), klik på **Create API Key**, og kopier nøglen.
  621. 2. Kør kommandoen `/connect` og søg efter Groq.
  622. ```txt
  623. /connect
  624. ```
  625. 3. Indtast API-nøglen for udbyderen.
  626. ```txt
  627. ┌ API key
  628. └ enter
  629. ```
  630. 4. Kør kommandoen `/models` for at vælge den du ønsker.
  631. ```txt
  632. /models
  633. ```
  634. ---
  635. ### Hugging Face
  636. [Hugging Face Inference Providers](https://huggingface.co/docs/inference-providers) giver adgang til åbne modeller som støttes af 17+ udbydere.
  637. 1. Gå til [Hugging Face-indstillinger](https://huggingface.co/settings/tokens/new?ownUserPermissions=inference.serverless.write&tokenType=fineGrained) for at oprette et token med tilladelse til at kalde inferensudbydere.
  638. 2. Kør kommandoen `/connect` og søg efter **Hugging Face**.
  639. ```txt
  640. /connect
  641. ```
  642. 3. Indtast dit Hugging Face-token.
  643. ```txt
  644. ┌ API key
  645. └ enter
  646. ```
  647. 4. Kør kommandoen `/models` for at vælge en model som _Kimi-K2-Instruct_ eller _GLM-4.6_.
  648. ```txt
  649. /models
  650. ```
  651. ---
  652. ### Helicone
  653. [Helicone](https://helicone.ai) er en LLM observerbarhedsplatform som giver logning, overvågning og analyser for dine AI-applikationer. Helicone AI Gateway ruter dine anmodninger til den rigtige udbyder automatisk baseret på modellen.
  654. 1. Gå til [Helicone](https://helicone.ai), opret en konto og generer en API-nøgle fra dashboardet.
  655. 2. Kør kommandoen `/connect` og søg efter **Helicone**.
  656. ```txt
  657. /connect
  658. ```
  659. 3. Indtast Helicone API-nøglen.
  660. ```txt
  661. ┌ API key
  662. └ enter
  663. ```
  664. 4. Kør kommandoen `/models` for at vælge en model.
  665. ```txt
  666. /models
  667. ```
  668. For flere udbydere og avancerede funktioner som caching og hastighedsbegrænsning, tjek [Helicone-dokumentationen](https://docs.helicone.ai).
  669. #### Valgfrie konfigurationer
  670. I tilfælde af at du ser en funktion eller model fra Helicone som ikke konfigureres automatisk gennem opencode, kan du altid konfigurere den selv.
  671. Her er [Helicone's Model Directory](https://helicone.ai/models), du skal bruge denne for at hente ID'erne til de modeller du vil tilføje.
  672. ```jsonc title="~/.config/opencode/opencode.jsonc"
  673. {
  674. "$schema": "https://opencode.ai/config.json",
  675. "provider": {
  676. "helicone": {
  677. "npm": "@ai-sdk/openai-compatible",
  678. "name": "Helicone",
  679. "options": {
  680. "baseURL": "https://ai-gateway.helicone.ai",
  681. },
  682. "models": {
  683. "gpt-4o": {
  684. // Model ID (from Helicone's model directory page)
  685. "name": "GPT-4o", // Your own custom name for the model
  686. },
  687. "claude-sonnet-4-20250514": {
  688. "name": "Claude Sonnet 4",
  689. },
  690. },
  691. },
  692. },
  693. }
  694. ```
  695. #### Brugerdefinerede headers
  696. Helicone understøtter tilpassede headers for funktioner som caching, brugersporing og sessionsadministration. Læg dem til din udbyderkonfiguration ved at bruge `options.headers`:
  697. ```jsonc title="~/.config/opencode/opencode.jsonc"
  698. {
  699. "$schema": "https://opencode.ai/config.json",
  700. "provider": {
  701. "helicone": {
  702. "npm": "@ai-sdk/openai-compatible",
  703. "name": "Helicone",
  704. "options": {
  705. "baseURL": "https://ai-gateway.helicone.ai",
  706. "headers": {
  707. "Helicone-Cache-Enabled": "true",
  708. "Helicone-User-Id": "opencode",
  709. },
  710. },
  711. },
  712. },
  713. }
  714. ```
  715. ##### Sessionssporing
  716. Helicones [Sessions](https://docs.helicone.ai/features/sessions) funktion lader dig gruppe relaterede LLM anmodninger sammen. Brug [opencode-helicone-session](https://github.com/H2Shami/opencode-helicone-session) plugin for automatisk at logge hver OpenCode-samtale som en session i Helicone.
  717. ```bash
  718. npm install -g opencode-helicone-session
  719. ```
  720. Tilføj den til din konfiguration.
  721. ```json title="opencode.json"
  722. {
  723. "plugin": ["opencode-helicone-session"]
  724. }
  725. ```
  726. Programmatisk injicerer `Helicone-Session-Id` og `Helicone-Session-Name` headers i dine anmodninger. På Helicones Sessions-side vil du se hver OpenCode-samtale opført som en separat session.
  727. ##### Almindelige Helicone-headers
  728. | Header | Beskrivelse |
  729. | -------------------------- | ------------------------------------------------------------------------- |
  730. | `Helicone-Cache-Enabled` | Aktiver respons-caching (`true`/`false`) |
  731. | `Helicone-User-Id` | Spor beregninger efter bruger |
  732. | `Helicone-Property-[Name]` | Tilføj egendefinerede egenskaber (f.eks. `Helicone-Property-Environment`) |
  733. | `Helicone-Prompt-Id` | Knyt anmodninger til prompt-versioner |
  734. Se [Helicone Header Directory](https://docs.helicone.ai/helicone-headers/header-directory) for alle tilgængelige headers.
  735. ---
  736. ### llama.cpp
  737. Du kan konfigurere opencode til at bruge lokale modeller gennem [llama.cpps](https://github.com/ggml-org/llama.cpp) llama-server-værktøj
  738. ```json title="opencode.json" "llama.cpp" {5, 6, 8, 10-15}
  739. {
  740. "$schema": "https://opencode.ai/config.json",
  741. "provider": {
  742. "llama.cpp": {
  743. "npm": "@ai-sdk/openai-compatible",
  744. "name": "llama-server (local)",
  745. "options": {
  746. "baseURL": "http://127.0.0.1:8080/v1"
  747. },
  748. "models": {
  749. "qwen3-coder:a3b": {
  750. "name": "Qwen3-Coder: a3b-30b (local)",
  751. "limit": {
  752. "context": 128000,
  753. "output": 65536
  754. }
  755. }
  756. }
  757. }
  758. }
  759. }
  760. ```
  761. I dette eksempel:
  762. - `llama.cpp` er den tilpassede udbyder ID. Dette kan være hvilken som helst streng du vil.
  763. - `npm` specificerer pakken som skal bruges for denne udbyder. Her bruges `@ai-sdk/openai-compatible` for enhver OpenAI-kompatibel API.
  764. - `name` er visningsnavnet for udbyderen i UI.
  765. - `options.baseURL` er endpointet for den lokale server.
  766. - `models` er et kort over model-ID'er til deres konfigurationer. Modelnavnet vil vises i modelvalglisten.
  767. ---
  768. ### IO.NET
  769. IO.NET tilbyder 17 modeller optimeret for forskellige brugstilfælde:
  770. 1. Gå til [IO.NET-konsollen](https://ai.io.net/), opret en konto og generer en API-nøgle.
  771. 2. Kør kommandoen `/connect` og søg efter **IO.NET**.
  772. ```txt
  773. /connect
  774. ```
  775. 3. Indtast nøglen IO.NET API.
  776. ```txt
  777. ┌ API key
  778. └ enter
  779. ```
  780. 4. Kør kommandoen `/models` for at vælge en model.
  781. ```txt
  782. /models
  783. ```
  784. ---
  785. ### LM Studio
  786. Du kan konfigurere opencode til at bruge lokale modeller gennem LM Studio.
  787. ```json title="opencode.json" "lmstudio" {5, 6, 8, 10-14}
  788. {
  789. "$schema": "https://opencode.ai/config.json",
  790. "provider": {
  791. "lmstudio": {
  792. "npm": "@ai-sdk/openai-compatible",
  793. "name": "LM Studio (local)",
  794. "options": {
  795. "baseURL": "http://127.0.0.1:1234/v1"
  796. },
  797. "models": {
  798. "google/gemma-3n-e4b": {
  799. "name": "Gemma 3n-e4b (local)"
  800. }
  801. }
  802. }
  803. }
  804. }
  805. ```
  806. I dette eksempel:
  807. - `lmstudio` er den tilpassede udbyder ID. Dette kan være hvilken som helst streng du vil.
  808. - `npm` specificerer pakken som skal bruges for denne udbyder. Her bruges `@ai-sdk/openai-compatible` for enhver OpenAI-kompatibel API.
  809. - `name` er visningsnavnet for udbyderen i UI.
  810. - `options.baseURL` er endpointet for den lokale server.
  811. - `models` er et kort over model-ID'er til deres konfigurationer. Modelnavnet vil vises i modelvalglisten.
  812. ---
  813. ### Moonshot AI
  814. Sådan bruger du Kimi K2 fra Moonshot AI:
  815. 1. Gå til [Moonshot AI-konsollen](https://platform.moonshot.ai/console), opret en konto og klik på **Create API Key**.
  816. 2. Kør kommandoen `/connect` og søg efter **Moonshot AI**.
  817. ```txt
  818. /connect
  819. ```
  820. 3. Indtast Moonshot API-nøglen.
  821. ```txt
  822. ┌ API key
  823. └ enter
  824. ```
  825. 4. Kør kommandoen `/models` for at vælge _Kimi K2_.
  826. ```txt
  827. /models
  828. ```
  829. ---
  830. ### MiniMax
  831. 1. Gå til [MiniMax API-konsollen](https://platform.minimax.io/login), opret en konto og generer en API-nøgle.
  832. 2. Kør kommandoen `/connect` og søg efter **MiniMax**.
  833. ```txt
  834. /connect
  835. ```
  836. 3. Indtast MiniMax API-nøglen.
  837. ```txt
  838. ┌ API key
  839. └ enter
  840. ```
  841. 4. Kør kommandoen `/models` for at vælge en model som _M2.1_.
  842. ```txt
  843. /models
  844. ```
  845. ---
  846. ### Nebius Token Factory
  847. 1. Gå til [Nebius Token Factory-konsollen](https://tokenfactory.nebius.com/), opret en konto og klik på **Add Key**.
  848. 2. Kør kommandoen `/connect` og søg efter **Nebius Token Factory**.
  849. ```txt
  850. /connect
  851. ```
  852. 3. Indtast Nebius Token Factory API-nøglen.
  853. ```txt
  854. ┌ API key
  855. └ enter
  856. ```
  857. 4. Kør kommandoen `/models` for at vælge en model som _Kimi K2 Instruct_.
  858. ```txt
  859. /models
  860. ```
  861. ---
  862. ### Ollama
  863. Du kan konfigurere opencode til at bruge lokale modeller gennem Ollama.
  864. :::tip
  865. Ollama kan automatisk konfigurere sig selv for OpenCode. Se [Ollama-integrationsdokumenterne](https://docs.ollama.com/integrations/opencode) for detaljer.
  866. :::
  867. ```json title="opencode.json" "ollama" {5, 6, 8, 10-14}
  868. {
  869. "$schema": "https://opencode.ai/config.json",
  870. "provider": {
  871. "ollama": {
  872. "npm": "@ai-sdk/openai-compatible",
  873. "name": "Ollama (local)",
  874. "options": {
  875. "baseURL": "http://localhost:11434/v1"
  876. },
  877. "models": {
  878. "llama2": {
  879. "name": "Llama 2"
  880. }
  881. }
  882. }
  883. }
  884. }
  885. ```
  886. I dette eksempel:
  887. - `ollama` er den tilpassede udbyder ID. Dette kan være hvilken som helst streng du vil.
  888. - `npm` specificerer pakken som skal bruges for denne udbyder. Her bruges `@ai-sdk/openai-compatible` for enhver OpenAI-kompatibel API.
  889. - `name` er visningsnavnet for udbyderen i UI.
  890. - `options.baseURL` er endpointet for den lokale server.
  891. - `models` er et kort over model-ID'er til deres konfigurationer. Modelnavnet vil vises i modelvalglisten.
  892. :::tip
  893. Hvis værktøjskald ikke fungerer, prøv at øge `num_ctx` i Ollama. Start omkring 16k - 32k.
  894. :::
  895. ---
  896. ### Ollama Cloud
  897. Sådan bruger du Ollama Cloud med OpenCode:
  898. 1. Gå til [https://ollama.com/](https://ollama.com/) og log på eller opret en konto.
  899. 2. Naviger til **Settings** > **Keys** og klik på **Add API Key** for at generere en ny API-nøgle.
  900. 3. Kopier API-nøglen til brug i OpenCode.
  901. 4. Kør kommandoen `/connect` og søg efter **Ollama Cloud**.
  902. ```txt
  903. /connect
  904. ```
  905. 5. Indtast din Ollama Cloud API-nøgle.
  906. ```txt
  907. ┌ API key
  908. └ enter
  909. ```
  910. 6. **Vigtigt**: Før du bruger skymodeller i OpenCode, skal du hente modelinformationen lokalt:
  911. ```bash
  912. ollama pull gpt-oss:20b-cloud
  913. ```
  914. 7. Kør kommandoen `/models` for at vælge din Ollama Cloud-model.
  915. ```txt
  916. /models
  917. ```
  918. ---
  919. ### OpenAI
  920. Vi anbefaler at du registrerer dig for [ChatGPT Plus eller Pro](https://chatgpt.com/pricing).
  921. 1. Når du har registreret dig, kør kommandoen `/connect` og vælg OpenAI.
  922. ```txt
  923. /connect
  924. ```
  925. 2. Her kan du vælge muligheden **ChatGPT Plus/Pro** og det åbner din browser
  926. og beder dig om at godkende.
  927. ```txt
  928. ┌ Select auth method
  929. │ ChatGPT Plus/Pro
  930. │ Manually enter API Key
  931. ```
  932. 3. Nu skal alle OpenAI-modellerne være tilgængelige, når du bruger kommandoen `/models`.
  933. ```txt
  934. /models
  935. ```
  936. ##### Brug API-nøgler
  937. Hvis du allerede har en API-nøgle, kan du vælge **Manually enter API Key** og indsætte den i terminalen.
  938. ---
  939. ### OpenCode Zen
  940. OpenCode Zen er en liste over testede og verificerede modeller leveret af OpenCode-teamet. [Læs mere](/docs/zen).
  941. 1. Log på **<a href={console}>OpenCode Zen</a>** og klik på **Create API Key**.
  942. 2. Kør kommandoen `/connect` og søg efter **OpenCode Zen**.
  943. ```txt
  944. /connect
  945. ```
  946. 3. Indtast OpenCode API-nøglen.
  947. ```txt
  948. ┌ API key
  949. └ enter
  950. ```
  951. 4. Kør kommandoen `/models` for at vælge en model som _Qwen 3 Coder 480B_.
  952. ```txt
  953. /models
  954. ```
  955. ---
  956. ### OpenRouter
  957. 1. Gå til [OpenRouter-dashboardet](https://openrouter.ai/settings/keys), klik på **Create API Key**, og kopier nøglen.
  958. 2. Kør kommandoen `/connect` og søg efter OpenRouter.
  959. ```txt
  960. /connect
  961. ```
  962. 3. Indtast API-nøglen for udbyderen.
  963. ```txt
  964. ┌ API key
  965. └ enter
  966. ```
  967. 4. Mange OpenRouter-modeller er forudindlæst som standard, kør kommandoen `/models` for at vælge den du ønsker.
  968. ```txt
  969. /models
  970. ```
  971. Du kan også tilføje flere modeller gennem opencode-konfigurationen.
  972. ```json title="opencode.json" {6}
  973. {
  974. "$schema": "https://opencode.ai/config.json",
  975. "provider": {
  976. "openrouter": {
  977. "models": {
  978. "somecoolnewmodel": {}
  979. }
  980. }
  981. }
  982. }
  983. ```
  984. 5. Du kan også tilpasse dem gennem opencode-konfigurationen. Her er et eksempel på at specificere en udbyder
  985. ```json title="opencode.json"
  986. {
  987. "$schema": "https://opencode.ai/config.json",
  988. "provider": {
  989. "openrouter": {
  990. "models": {
  991. "moonshotai/kimi-k2": {
  992. "options": {
  993. "provider": {
  994. "order": ["baseten"],
  995. "allow_fallbacks": false
  996. }
  997. }
  998. }
  999. }
  1000. }
  1001. }
  1002. }
  1003. ```
  1004. ---
  1005. ### SAP AI Core
  1006. SAP AI Core giver adgang til 40+ modeller fra OpenAI, Anthropic, Google, Amazon, Meta, Mistral og AI21 gennem en samlet platform.
  1007. 1. Gå til din [SAP BTP Cockpit](https://account.hana.ondemand.com/), naviger til din SAP AI kerne-tjenesteinstans, og opret en tjenestenøgle.
  1008. :::tip
  1009. Tjenestenøglen er et JSON-objekt som indeholder `clientid`, `clientsecret`, `url` og `serviceurls.AI_API_URL`. Du finder din AI-kerneinstans under **Services** > **Instances and Subscriptions** i BTP cockpittet.
  1010. :::
  1011. 2. Kør kommandoen `/connect` og søg efter **SAP AI Core**.
  1012. ```txt
  1013. /connect
  1014. ```
  1015. 3. Indtast tjenestenøglen JSON.
  1016. ```txt
  1017. ┌ Service key
  1018. └ enter
  1019. ```
  1020. Eller angiv miljøvariablen `AICORE_SERVICE_KEY`:
  1021. ```bash
  1022. AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}' opencode
  1023. ```
  1024. Eller tilføj den til din bash-profil:
  1025. ```bash title="~/.bash_profile"
  1026. export AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}'
  1027. ```
  1028. 4. Angiv eventuelt deployment-ID og ressourcegruppe:
  1029. ```bash
  1030. AICORE_DEPLOYMENT_ID=your-deployment-id AICORE_RESOURCE_GROUP=your-resource-group opencode
  1031. ```
  1032. :::note
  1033. Disse indstillinger er valgfrie og bør konfigureres i henhold til SAP AI kerne-opsætningen.
  1034. :::
  1035. 5. Kør kommandoen `/models` for at vælge fra 40+ tilgængelige modeller.
  1036. ```txt
  1037. /models
  1038. ```
  1039. ---
  1040. ### STACKIT
  1041. STACKIT AI Model Serving leverer fuldt administreret suverænt hostingmiljø til AI-modeller, med fokus på LLM'er som Llama, Mistral og Qwen, med maksimal datasuverænitet på europæisk infrastruktur.
  1042. 1. Gå til [STACKIT Portal](https://portal.stackit.cloud), naviger til **AI Model Serving**, og opret en auth-token til dit projekt.
  1043. :::tip
  1044. Du skal have en STACKIT-kundekonto, brugerkonto og projekt, før du opretter auth-tokens.
  1045. :::
  1046. 2. Kør kommandoen `/connect` og søg efter **STACKIT**.
  1047. ```txt
  1048. /connect
  1049. ```
  1050. 3. Indtast din STACKIT AI Model Serving auth-token.
  1051. ```txt
  1052. ┌ API key
  1053. └ enter
  1054. ```
  1055. 4. Kør kommandoen `/models` for at vælge fra tilgængelige modeller som _Qwen3-VL 235B_ eller _Llama 3.3 70B_.
  1056. ```txt
  1057. /models
  1058. ```
  1059. ---
  1060. ### OVHcloud AI Endpoints
  1061. 1. Gå til [OVHcloud-panelet](https://ovh.com/manager). Naviger til `Public Cloud`-delen, `AI & Machine Learning` > `AI Endpoints` og i `API Keys`-fanen klikker du på **Opret en ny API-nøgle**.
  1062. 2. Kør kommandoen `/connect` og søg efter **OVHcloud AI Endpoints**.
  1063. ```txt
  1064. /connect
  1065. ```
  1066. 3. Indtast OVHcloud AI Endpoints API-nøgle.
  1067. ```txt
  1068. ┌ API key
  1069. └ enter
  1070. ```
  1071. 4. Kør kommandoen `/models` for at vælge en model som _gpt-oss-120b_.
  1072. ```txt
  1073. /models
  1074. ```
  1075. ---
  1076. ### Scaleway
  1077. Sådan bruger du [Scaleway Generative APIs](https://www.scaleway.com/en/docs/generative-apis/) med OpenCode:
  1078. 1. Gå til [Scaleway Console IAM indstillinger](https://console.scaleway.com/iam/api-keys) for at generere en ny API-nøgle.
  1079. 2. Kør kommandoen `/connect` og søg efter **Scaleway**.
  1080. ```txt
  1081. /connect
  1082. ```
  1083. 3. Indtast Scaleway API-nøglen.
  1084. ```txt
  1085. ┌ API key
  1086. └ enter
  1087. ```
  1088. 4. Kør kommandoen `/models` for at vælge en model som _devstral-2-123b-instruct-2512_ eller _gpt-oss-120b_.
  1089. ```txt
  1090. /models
  1091. ```
  1092. ---
  1093. ### Together AI
  1094. 1. Gå til [Together AI-konsollen](https://api.together.ai), opret en konto og klik på **Add Key**.
  1095. 2. Kør kommandoen `/connect` og søg efter **Together AI**.
  1096. ```txt
  1097. /connect
  1098. ```
  1099. 3. Indtast Together AI API-nøglen.
  1100. ```txt
  1101. ┌ API key
  1102. └ enter
  1103. ```
  1104. 4. Kør kommandoen `/models` for at vælge en model som _Kimi K2 Instruct_.
  1105. ```txt
  1106. /models
  1107. ```
  1108. ---
  1109. ### Venice AI
  1110. 1. Gå til [Venice AI-konsollen](https://venice.ai), opret en konto og generer en API-nøgle.
  1111. 2. Kør kommandoen `/connect` og søg efter **Venice AI**.
  1112. ```txt
  1113. /connect
  1114. ```
  1115. 3. Indtast Venice AI API-nøglen.
  1116. ```txt
  1117. ┌ API key
  1118. └ enter
  1119. ```
  1120. 4. Kør kommandoen `/models` for at vælge en model som _Llama 3.3 70B_.
  1121. ```txt
  1122. /models
  1123. ```
  1124. ---
  1125. ### Vercel AI Gateway
  1126. Vercel AI Gateway lader dig få adgang til modeller fra OpenAI, Anthropic, Google, xAI og mere gennem et samlet endpoint. Modeller tilbydes til listepris uden påslag.
  1127. 1. Gå til [Vercel dashboard](https://vercel.com/), naviger til fanen **AI Gateway**, og klik på **API Keys** for at oprette en ny API-nøgle.
  1128. 2. Kør kommandoen `/connect` og søg efter **Vercel AI Gateway**.
  1129. ```txt
  1130. /connect
  1131. ```
  1132. 3. Indtast Vercel AI Gateway API-nøgle.
  1133. ```txt
  1134. ┌ API key
  1135. └ enter
  1136. ```
  1137. 4. Kør kommandoen `/models` for at vælge en model.
  1138. ```txt
  1139. /models
  1140. ```
  1141. Du kan også tilpasse modeller gennem opencode-konfigurationen. Her er et eksempel på specificering af udbyder-rutingsrækkefølge.
  1142. ```json title="opencode.json"
  1143. {
  1144. "$schema": "https://opencode.ai/config.json",
  1145. "provider": {
  1146. "vercel": {
  1147. "models": {
  1148. "anthropic/claude-sonnet-4": {
  1149. "options": {
  1150. "order": ["anthropic", "vertex"]
  1151. }
  1152. }
  1153. }
  1154. }
  1155. }
  1156. }
  1157. ```
  1158. Nogle nyttige rutealternativer:
  1159. | Alternativ | Beskrivelse |
  1160. | ------------------- | -------------------------------------------------------- |
  1161. | `order` | Providersekvens for at prøve |
  1162. | `only` | Begræns til specifikke udbydere |
  1163. | `zeroDataRetention` | Brug kun udbydere med nul retningslinjer for datalagring |
  1164. ---
  1165. ### xAI
  1166. 1. Gå til [xAI-konsollen](https://console.x.ai/), opret en konto og generer en API-nøgle.
  1167. 2. Kør kommandoen `/connect` og søg efter **xAI**.
  1168. ```txt
  1169. /connect
  1170. ```
  1171. 3. Indtast xAI API-nøglen.
  1172. ```txt
  1173. ┌ API key
  1174. └ enter
  1175. ```
  1176. 4. Kør kommandoen `/models` for at vælge en model som _Grok Beta_.
  1177. ```txt
  1178. /models
  1179. ```
  1180. ---
  1181. ### Z.AI
  1182. 1. Gå til [Z.AI API-konsollen](https://z.ai/manage-apikey/apikey-list), opret en konto og klik på **Create new API Key**.
  1183. 2. Kør kommandoen `/connect` og søg efter **Z.AI**.
  1184. ```txt
  1185. /connect
  1186. ```
  1187. Hvis du abonnerer på **GLM Coding Plan**, vælg **Z.AI Coding Plan**.
  1188. 3. Indtast Z.AI API-nøglen.
  1189. ```txt
  1190. ┌ API key
  1191. └ enter
  1192. ```
  1193. 4. Kør kommandoen `/models` for at vælge en model som _GLM-4.7_.
  1194. ```txt
  1195. /models
  1196. ```
  1197. ---
  1198. ### ZenMux
  1199. 1. Gå til [ZenMux-dashboardet](https://zenmux.ai/settings/keys), klik på **Create API Key**, og kopier nøglen.
  1200. 2. Kør kommandoen `/connect` og søg efter ZenMux.
  1201. ```txt
  1202. /connect
  1203. ```
  1204. 3. Indtast API-nøglen for udbyderen.
  1205. ```txt
  1206. ┌ API key
  1207. └ enter
  1208. ```
  1209. 4. Mange ZenMux-modeller er forudindlæst som standard, kør kommandoen `/models` for at vælge den du ønsker.
  1210. ```txt
  1211. /models
  1212. ```
  1213. Du kan også tilføje flere modeller gennem opencode-konfigurationen.
  1214. ```json title="opencode.json" {6}
  1215. {
  1216. "$schema": "https://opencode.ai/config.json",
  1217. "provider": {
  1218. "zenmux": {
  1219. "models": {
  1220. "somecoolnewmodel": {}
  1221. }
  1222. }
  1223. }
  1224. }
  1225. ```
  1226. ---
  1227. ## Brugerdefineret udbyder
  1228. Sådan tilføjer du en **OpenAI-kompatibel** udbyder som ikke er opført i `/connect`-kommandoen:
  1229. :::tip
  1230. Du kan bruge hvilken som helst OpenAI-kompatibel udbyder med opencode. De fleste moderne AI-udbydere tilbyder OpenAI-kompatible API'er.
  1231. :::
  1232. 1. Kør kommandoen `/connect` og rul ned til **Other**.
  1233. ```bash
  1234. $ /connect
  1235. ┌ Add credential
  1236. ◆ Select provider
  1237. │ ...
  1238. │ ● Other
  1239. ```
  1240. 2. Indtast et unikt ID for udbyderen.
  1241. ```bash
  1242. $ /connect
  1243. ┌ Add credential
  1244. ◇ Enter provider id
  1245. │ myprovider
  1246. ```
  1247. :::note
  1248. Vælg et mindeværdigt ID, du vil bruge dette i din konfigurationsfil.
  1249. :::
  1250. 3. Indtast API-nøglen for udbyderen.
  1251. ```bash
  1252. $ /connect
  1253. ┌ Add credential
  1254. ▲ This only stores a credential for myprovider - you will need to configure it in opencode.json, check the docs for examples.
  1255. ◇ Enter your API key
  1256. │ sk-...
  1257. ```
  1258. 4. Opret eller opdater `opencode.json`-filen i projektkataloget:
  1259. ```json title="opencode.json" ""myprovider"" {5-15}
  1260. {
  1261. "$schema": "https://opencode.ai/config.json",
  1262. "provider": {
  1263. "myprovider": {
  1264. "npm": "@ai-sdk/openai-compatible",
  1265. "name": "My AI ProviderDisplay Name",
  1266. "options": {
  1267. "baseURL": "https://api.myprovider.com/v1"
  1268. },
  1269. "models": {
  1270. "my-model-name": {
  1271. "name": "My Model Display Name"
  1272. }
  1273. }
  1274. }
  1275. }
  1276. }
  1277. ```
  1278. Her er konfigurationsmulighederne:
  1279. - **npm**: AI SDK pakke at bruge, `@ai-sdk/openai-compatible` for OpenAI-kompatible udbydere
  1280. - **name**: Visningsnavn i UI.
  1281. - **models**: Tilgængelige modeller.
  1282. - **options.baseURL**: API endpoint URL.
  1283. - **options.apiKey**: Angiv API-nøglen hvis du ikke bruger auth.
  1284. - **options.headers**: Angiv egendefinerede headers.
  1285. Mere om de avancerede muligheder i eksemplet nedenfor.
  1286. 5. Kør kommandoen `/models` og din egendefinerede udbyder og modeller vil vises i udvalgslisten.
  1287. ---
  1288. ##### Eksempel
  1289. Her er et eksempel på indstilling af mulighederne `apiKey`, `headers` og model `limit`.
  1290. ```json title="opencode.json" {9,11,17-20}
  1291. {
  1292. "$schema": "https://opencode.ai/config.json",
  1293. "provider": {
  1294. "myprovider": {
  1295. "npm": "@ai-sdk/openai-compatible",
  1296. "name": "My AI ProviderDisplay Name",
  1297. "options": {
  1298. "baseURL": "https://api.myprovider.com/v1",
  1299. "apiKey": "{env:ANTHROPIC_API_KEY}",
  1300. "headers": {
  1301. "Authorization": "Bearer custom-token"
  1302. }
  1303. },
  1304. "models": {
  1305. "my-model-name": {
  1306. "name": "My Model Display Name",
  1307. "limit": {
  1308. "context": 200000,
  1309. "output": 65536
  1310. }
  1311. }
  1312. }
  1313. }
  1314. }
  1315. }
  1316. ```
  1317. Konfigurationsdetaljer:
  1318. - **apiKey**: Angiv med `env` variabel syntaks, [læs mere](/docs/config#env-vars).
  1319. - **headers**: Egendefinerede headers sendt med hver anmodning.
  1320. - **limit.context**: Maksimalt input-tokens som modellen accepterer.
  1321. - **limit.output**: Maksimalt antal tokens modellen kan generere.
  1322. `limit`-felterne lader OpenCode forstå hvor meget kontekst du har tilbage. Standardudbydere henter disse automatisk fra models.dev.
  1323. ---
  1324. ## Fejlfinding
  1325. Hvis du har problemer med at konfigurere en udbyder, tjek følgende:
  1326. 1. **Tjek godkendelsesopsætningen**: Kør `opencode auth list` for at se om legitimationsoplysningerne
  1327. for udbyderen er tilføjet til din konfiguration.
  1328. Dette gælder ikke udbydere som Amazon Bedrock, som er afhængige af miljøvariabler for godkendelse.
  1329. 2. For tilpassede udbydere, tjek opencode-konfigurationen og:
  1330. - Sørg for at udbyderens ID som bruges i `/connect`-kommandoen matcher ID i opencode-konfigurationen.
  1331. - Den rigtige npm-pakke bruges for udbyderen. Brug for eksempel `@ai-sdk/cerebras` for Cerebras. Og for alle andre OpenAI-kompatible udbydere, brug `@ai-sdk/openai-compatible`.
  1332. - Kontroller at korrekt API-endpoint er brugt i `options.baseURL`-feltet.