Egne AI-forbindelser
Jeres organisation kan køre Chat på sin egen AI: egen infrastruktur, fx Azure OpenAI, egen hardware eller et andet OpenAI-kompatibelt endpoint, eller jeres egen konto hos en udbyder som Anthropic, OpenAI, Mistral AI eller OpenRouter. En administrator tilføjer hver forbindelse i hubben og bestemmer, om medarbejderne kan vælge den i Chat, og om den kan bruges via API.
Aftalen med udbyderen er jeres egen. Udbyderen er ikke komplais underdatabehandler, jeres organisation betaler udbyderen direkte, og forbruget tæller ikke med i loftet for AI-forbrug. Decide, Redacts genkendelse, Index og søgning i Dokumenter bruger altid komplais validerede modeller, så forbindelserne gælder ikke for dem.
Tilføj en forbindelse
Du skal være administrator i organisationen. Siden findes, når organisationen har Chat eller Dokumenter.
- Log ind, og åbn Organisation › AI og behandling › Forbindelser (
/settings/ai). Siden hedder AI-forbindelser. - Åbn Tilføj forbindelse under Jeres forbindelser.
- Vælg Type. Jeres konto hos en udbyder kræver en Udbyder: Anthropic, OpenAI, Mistral AI, OpenRouter eller Anden udbyder (OpenAI-kompatibel). Jeres egen infrastruktur er et OpenAI-kompatibelt endpoint, fx Azure OpenAI eller jeres egen hardware.
- Skriv et Navn. Medarbejderne ser det i Chat, fx Azure Sverige.
- Ved egen infrastruktur eller en anden udbyder skriver du API-adresse, Hvor behandles data? og Forbliver data i EU/EØS? (Ja, Nej eller Ved ikke). Ved en anden udbyder skriver du også Udbyderens navn. Adressen skal bruge https og kunne nås fra internettet.
- Skriv Model, som udbyderen skriver den. Hos Azure er det udrulningens navn. Hos OpenRouter vælger
openrouter/freeblandt OpenRouters gratis modeller, eller du kan angive én bestemt model. - Indsæt API-nøgle. Den gemmes krypteret, og bagefter vises kun de sidste fire tegn.
- Vælg Kan vælges i Chat og Kan bruges via API. En ny forbindelse starter med flueben ved Chat og uden flueben ved API.
- Vælg Tilføj forbindelse. Siden kontrollerer forbindelsen med det samme, uden at sende en besked, og fortæller, om udbyderen godkendte nøglen og har modellen på sin liste.
Hvad medarbejderne ser om en forbindelse
Hver forbindelse oplyser, hvor den behandler data, hvem der driver den, og om data forlader EU/EØS, både på siden og ved valget i Chat:
| Udbyder | Behandles i | Data forlader EU/EØS |
|---|---|---|
| Anthropic | USA | Ja |
| OpenAI | USA | Ja |
| Mistral AI | Frankrig | Nej |
| OpenRouter | USA; OpenRouter sender hver anmodning videre til modellens udbyder, som kan ligge i et andet land | Ja |
| Jeres egen infrastruktur eller en anden udbyder | Hvor jeres administrator oplyser | Som jeres administrator oplyser |
Ved egen infrastruktur og en anden udbyder er oplysningerne jeres administrators egne, og hubben viser dem som jeres.
- Gratis modeller. OpenRouters modeller, der ender på
:free, og routerenopenrouter/freehar en besked ved valget: Udbyderen kan gemme og bruge det, der sendes. Brug dem til afprøvning, syntetiske data og idéer. - Routere. En router som
openrouter/freevælger en model for hver anmodning. Den model, der svarede, vises i Chat og i forbrugsloggen, og API'et returnerer den imodel.
Kontrollér, ret eller slet en forbindelse
- Kontrollér forbindelsen afprøver nøglen og modellen uden at sende en besked. Svarer forbindelsen ikke inden for 15 sekunder, står der, at den ikke svarede.
- Redigér ændrer et hvilket som helst felt. Lad API-nøgle stå tomt for at beholde nøglen; skifter du udbyder, skal du skrive en ny.
- Slet forbindelse sletter også nøglen, og forbindelsen kan ikke længere vælges i Chat eller bruges via API. En forbindelse, der bruges til udkast, kan ikke slettes, før du vælger en anden behandling til udkast.
Samme side har Udkast i Dokumenter, skabeloner og Word: hvor teksten sendes hen, når nogen beder om et udkast eller et forslag. Vælg Lokal infrastruktur eller en af jeres forbindelser, og vælg Gem valg.
Sådan beskyttes nøgler og adresser
- En administrator skriver nøglen én gang. Den gemmes krypteret og sendes aldrig tilbage til en browser. komplais medarbejdere modtager eller håndterer den aldrig.
- komplais operatører ser jeres forbindelser uden at kunne ændre dem, med værtsnavnet for jeres egen adresse, men aldrig nøglen, dens sidste tegn eller den fulde adresse.
- Adressen kontrolleres, når den gemmes, og igen før hvert kald. Den skal bruge https, må ikke pege på en intern eller privat netværksadresse og må ikke viderestille.
- Når en forbindelse oprettes, ændres eller slettes, og når valget til udkast ændres, skrives det i organisationens Hændelseslog uden nøglen.
- Kun organisationens administratorer kan åbne siden. komplais supportadgang, som kun kan læse, kan ikke.
Brug en forbindelse via API
Et kald kan køre på en forbindelse, når:
- det bruger en personlig API-nøgle (
kp_live_...) medchat:complete. Organisationens integrationsnøgle (kp_org_...) afvises med integration_not_permitted; - personen bag nøglen har adgang til Chat, og organisationens behandling for Chat er godkendt;
- forbindelsen har flueben ved Kan bruges via API. Forbindelsen viser så Værdi til processing i API'et, fx
connection:6d3f9a2e-1b4c-4e7d-8a5f-0c2b9e4d7a31.
Valgene under AI og behandling › Behandling gælder komplais egen behandling; en forbindelse følger sine egne to kontakter.
Kopiér forbindelsens værdi fra siden Forbindelser.
Vis dens model med GET /v1/models. Listen har én post: den model eller router, forbindelsen angiver.
Shellcurl "https://api.komplai.dk/v1/models?processing=connection:6d3f9a2e-1b4c-4e7d-8a5f-0c2b9e4d7a31" \ -H "Authorization: Bearer $KOMPLAI_TOKEN"Svar{ "object": "list", "data": [ { "id": "openrouter/free", "object": "model", "owned_by": "openrouter", "name": "OpenRouter, gratis modeller", "processing": "connection:6d3f9a2e-1b4c-4e7d-8a5f-0c2b9e4d7a31" } ] }Send POST /v1/chat/completions med værdien i
processing. Udeladmodel, eller send den model, forbindelsen angiver.Shellcurl https://api.komplai.dk/v1/chat/completions \ -H "Authorization: Bearer $KOMPLAI_TOKEN" \ -H "Content-Type: application/json" \ -d '{"processing": "connection:6d3f9a2e-1b4c-4e7d-8a5f-0c2b9e4d7a31", "messages": [{"role": "user", "content": "Hvor lang tid har jeg til at klage over en afgørelse om boligstøtte?"}], "max_tokens": 256}'Læs svaret.
modeler den model, der svarede, og som en router vælger for hver anmodning;requested_modeler den model eller router, forbindelsen angiver, ogprocessinggentager forbindelsen.Uddrag af svaret{ "object": "chat.completion", "model": "meta-llama/llama-3.3-70b-instruct:free", "requested_model": "openrouter/free", "processing": "connection:6d3f9a2e-1b4c-4e7d-8a5f-0c2b9e4d7a31", "choices": [ { "index": 0, "message": { "role": "assistant", "content": "Du har normalt 4 uger til at klage, regnet fra den dag du fik afgørelsen. Fristen står i afgørelsens klagevejledning." }, "finish_reason": "stop" } ] }
Et kald på en forbindelse følger de samme regler som andre Chat-kald: kun tekst, hele svaret på én gang, højst 32 beskeder og 80.000 UTF-16-tegn, og modellen har 120 sekunder til at svare. komplai gemmer kaldets metadata og den model, der svarede, ikke beskederne. Desuden gælder:
reasoning_effortkan kun værenone; andre værdier afvises med reasoning_not_enabled.- En forbindelse til Anthropic tager en
temperaturepå højst 1, kun tekst somresponse_formatog mindst én besked, der ikke er en systembesked. Alt andet afvises med invalid_input. - En anden
modelend forbindelsens egen afvises med model_not_enabled.
API'et flytter aldrig et kald fra en forbindelse til komplais behandling eller til en anden forbindelse, heller ikke når forbindelsen fejler. Chat-referencen har alle felter. Et kald på en forbindelse kan også stoppe med disse fejl:
| Kode | Status | Hvad der skete |
|---|---|---|
| connection_not_found | 404 | Ingen forbindelse med dette id er tilgængelig for dig via API. |
| processing_choice_not_allowed | 403 | Forbindelsen er ikke gjort tilgængelig via API. |
| connection_model_unavailable | 409 | Udbyderen kender ikke den model, forbindelsen angiver. |
| connection_rate_limited | 429 | Udbyderen afviser kald lige nu. Vent det antal sekunder, Retry-After angiver. |
| connection_unauthorized | 502 | Udbyderen afviste forbindelsens nøgle. |
| connection_payment_required | 502 | Udbyderen kræver betaling på organisationens konto. |
| connection_request_refused | 502 | Udbyderen afviste anmodningen, fx en værdi, den ikke tager imod. |
| connection_failed | 502 | Udbyderen kunne ikke nås eller fejlede. |
| connection_unavailable | 503 | Forbindelsens nøgle kan ikke læses, eller adressen afvises. |
| timeout | 504 | Modellen svarede ikke inden for 120 sekunder. |