AI
Antimatters AI-funktioner använder modeller du väljer: en molnleverantör eller en server på ditt eget nätverk. Ingenting skickas någonstans förrän du har konfigurerat en modell. Denna sida behandlar modellanslutningar, varje funktion, de data den skickar och hur du stänger av den.
AI-funktionerna
| Funktion | Konfigureras i | Typ av modell | På som standard |
|---|---|---|---|
| Omskrivning i meddelandefältet: förbättra, förkorta, rätta eller översätt ett meddelande innan du skickar det | AI › Inbyggda funktioner, med en modellanslutning | En chattmodell (LLM) | nej |
| Sammanfattningar: sammanfattningar av de kanaler användarna väljer | AI › Inbyggda funktioner, med en modellanslutning | En chattmodell (LLM) | nej |
| Automatisk översättning av kanaler | Site-konfiguration › Lokalisering | En modellanslutning, LibreTranslate eller en OpenAI-kompatibel API | nej |
| Uppläsning | Integrationer › Text till tal, valfritt med en modellanslutning | Text-till-tal, OpenAI-kompatibel | nej |
| AI-agenter: chatt med en bot, sammanfattningar av trådar, sammanfattningar av samtal | Appen Agents | Valfri tjänst för stora språkmodeller (LLM) | Appen är på, men gör ingenting förrän du lägger till en tjänst |
| Transkriptioner och live-undertexter för samtal | Appen Calls | Tal-till-text, OpenAI-kompatibel | nej |
”OpenAI-kompatibel” betyder en server som erbjuder samma HTTP-API som OpenAI. De flesta modellservrar du kan köra själv gör det (t.ex. Ollama, vLLM, llama.cpp:s server, eller Whisper- och text-till-tal-servrar), liksom många molnleverantörer och gatewayer som LiteLLM eller OpenRouter. Ingen licens krävs för någon av dessa funktioner.
De inbyggda funktionerna (omskrivning, sammanfattningar, översättning och uppläsning) kräver inte appen Agents: de använder modellanslutningarna du lägger till i Systemkonsolen.
Modellanslutningar
En modellanslutning är en AI-leverantör som Antimatter kan anropa: dess adress, dess nyckel och dess modeller. Du lägger till den en gång och väljer den sedan för varje funktion som ska använda den. Det finns två typer:
- Serveromfattande anslutningar, hanterade av systemadministratörer i Systemkonsol › AI › Modellanslutningar. Endast de kan tillhandahålla de inbyggda funktionerna. Appar kan också använda dem, för de personer som är tillåtna.
- Communityanslutningar, som en communitys administratörer lägger till för sin egen community i communityns inställningar (se nedan). Appar använder dem för communityns personer. De tillhandahåller aldrig de inbyggda funktionerna.
Avsnittet AI i Systemkonsolen visas för de personer som får hantera serveromfattande anslutningar: systemadministratörer, som standard. Sidan Modellanslutningar listar serveromfattande anslutningar och de för varje community.
Lägg till en anslutning
I Systemkonsol › AI › Modellanslutningar, klicka på Lägg till en anslutning och fyll i formuläret:
| Fält | Vad som ska anges |
|---|---|
| Förinställningar | Fyller i leverantör och adress för en välkänd tjänst: OpenAI, Mistral, Gemini, OpenRouter eller Ollama och LiteLLM på servern. Valfritt. |
| Namn | Namnet som administratörer ser när de väljer den, till exempel "Företags OpenAI". |
| Leverantör | OpenAI-kompatibel (de flesta leverantörer, gatewayer och modellserverar du kör själv) eller Anthropic. Molntjänster med egen inloggning, såsom AWS Bedrock, Google Vertex AI eller Azure med Entra ID, går via deras OpenAI-kompatibla endpoint eller en gateway som LiteLLM. |
| Bas-URL | API:ets adress, inklusive /v1, till exempel http://ollama:11434/v1. Om det lämnas tomt används leverantörens egen (https://api.openai.com/v1 eller https://api.anthropic.com/v1). |
| API-nyckel | Leverantörens nyckel. Lämna den tom om endpointen inte kräver någon. Den lagras krypterat och visas aldrig igen: formuläret visar endast de sista fyra tecknen och erbjuder att behålla, byta ut eller ta bort den. |
| Extra headers | Headers som skickas med varje begäran, för en gateway som kräver dem. Deras värden lagras krypterat som nyckeln och visas aldrig igen: för att ändra dem måste du skriva in dem alla på nytt. |
| Modeller | Modellen som används för varje funktion när en funktion eller en app inte anger en: Chatt, Embeddings, Transkription och Decisions. Ladda modeller listar modellerna som endpointen erbjuder. Lämna en funktion tom om endpointen inte erbjuder den. Anthropic-anslutningar kan bara chatta. |
| Decisions API | Hur decisions-modellen anropas: OpenAI decisions eller SystemOne. Endast relevant för appar som begär decisions. |
| Begränsningar | Se Begränsningar och budgetar. |
| Gemenskaper | Endast serveromfattande anslutningar. Alla gemenskaper: användbar i alla gemenskaper, samt i direkt- och gruppmeddelanden. Annars endast i de gemenskaper du väljer. |
| Vem får använda den | Alla där den är användbar, eller endast de team (grupper av personer inom en gemenskap) och roller du väljer (Systemadministratörer, Gemenskapsadministratörer). Gäster också låter gäster använda den; utan det kan gäster inte, ens med Alla. |
Testa anslutningen kontrollerar adressen och nyckeln: servern ber endpointen om dess modeller, eller skickar en chatt med ett token. En ändrad adress testas med den sparade nyckeln först efter att du har sparat, eller om du skriver in nyckeln igen. Klicka på Lägg till anslutning för att spara.
Servern gör begärandena själv, så den måste kunna nå API:t: en modellserver i samma compose-projekt, på ditt nätverk eller på Internet. Utgående begäranden respekterar variablerna HTTP_PROXY och HTTPS_PROXY.
När du tar bort en anslutning glöms dess nyckel bort. Funktionerna som använde den slutar använda AI tills du väljer en annan anslutning.
Gränser och budgetar
Varje anslutning har fyra gränser. Tomt eller 0 betyder ingen gräns.
- Begäranden per minut och Per person, begäranden per minut. De räknas separat av varje server: en kluster med tre servrar släpper igenom upp till tre gånger så mycket.
- Token per månad och Per person, token per månad: tokenbudgetar, per kalendermånad (UTC), räknade i databasen för hela klustret. Flera begäranden som körs samtidigt kan gå lite över en budget.
Gränserna per person gäller även för skriv om och sammanfattningar: de räknas mot den person som skriver om, eller som äger sammanfattningen.
Användning
Listan visar varje anslutnings användning i månad. Användning öppnar detaljerna: token in och ut, begäranden, den månatliga budgeten, användning per dag (UTC) och per användning (Skriv om, Sammanfattningar, Automatisk översättning, Text till tal, Personer, via appar, eller en app).
Varje anrop som en person eller en app gör via en anslutning skriver också en revisionspost: vem, anslutningen, användningen, modellen, tokenräkningen och om det lyckades, aldrig vad som sägdes. De inbyggda funktionerna räknas bara i användningen: översättning ensam gör ett anrop per meddelande och språk.
Gemenskapsanslutningar
Gemenskapsadministratörer lägger till sin gemenskaps egna anslutningar i gemenskapens inställningar, i fliken Modellanslutningar. Formuläret är detsamma, utan Gemenskaper: en gemenskaps anslutning fungerar bara i sina egna kanaler, för sina egna medlemmar, och dess publik kan bara nämna sina egna team. Roller med behörigheten Hantera modellanslutningar kan också hantera dem. Som standard har gemenskapsadministratörer det.
En gemenskaps anslutning kan inte nå privata eller loopback-adresser (en Ollama-server på ditt nätverk, till exempel), om inte Systemkonsol › Miljö › Utvecklare › Tillåt osäkra interna anslutningar till (ServiceSettings.AllowedUntrustedInternalConnections) listar dem. Serveromfattande anslutningar kan.
Se Gemenskapsinställningar för gemenskapsadministratörernas sida.
Krypteringsnyckeln
Nycklar och extra sidhuvuden för modellanslutningar krypteras i databasen (AES-256-GCM) med en krypteringsnyckel. En databassäkerhetskopia i sig avslöjar dem inte. Servern letar efter nyckeln i följande ordning:
- Variabeln
AM_AI_ENCRYPTION_KEY: 32 slumpmässiga byte, i base64. Skapa en medopenssl rand -base64 32. - Annars filen
ai-encryption.keyi roten till serverns datamapp (FileSettings.Directory,./data/som standard). Servern skapar den, så att bara den själv kan läsa den, första gången en anslutning behöver den. Appar, exporteringar och filarkiv kan inte läsa den.
När du ska ställa in variabeln:
- I webbställens compose-fil.
compose.yamlskickarAM_AI_ENCRYPTION_KEYfrån.envoch behåller nyckelfilen idata-volymen när variabeln är tom. Det är bättre att ställa in variabeln: då innehåller säkerhetskopian av.envnyckeln, åtskilt från databasen. Lägg till den i.envoch kördocker compose up -d:
Om servern redan har skapat sin nyckelfil, ange den nyckel den innehåller iecho "AM_AI_ENCRYPTION_KEY=$(openssl rand -base64 32)" >> .env.envistället, så att de sparade nycklarna förblir läsbara:docker compose exec antimatter cat /antimatter/data/ai-encryption.keyskriver ut den. - En kluster vars filer finns i S3. Dess delar delar ingen mapp, så servern skapar inte filen: ställ in samma variabel på varje server. Innan det är gjort kan anslutningar inte spara nycklar.
- Med releasearkivet eller paketen finns filen i
data/(/var/lib/antimatter/dataför paketen). Du kan behålla den där, eller ställa in variabeln i din miljöfil.
För att byta nyckel, ställ in den nya i AM_AI_ENCRYPTION_KEY och den gamla i AM_AI_ENCRYPTION_PREVIOUS_KEYS (flera nycklar separerade med kommatecken): nycklar som sparats med den gamla kan fortfarande läsas. En anslutnings nyckel krypteras med den nya nyckeln när du anger den igen. Behåll den gamla nyckeln i listan tills varje anslutnings nyckel har angetts igen.
De inbyggda funktionerna
I Systemkonsol › AI › Inbyggda funktioner väljer du för varje funktion en serverbrett anslutning och dess modell, eller Av. En funktion utan anslutning använder ingen AI. Ladda modeller visar alla modeller för anslutningen; som standard använder varje funktion anslutningens chattmodell.
| Funktion | Inställning | Vad mer det kräver |
|---|---|---|
| Skriva om i meddelandefältet: AI-menyn i meddelandefältet (förbättra, förkorta, korrigera, översätt) | AISettings.Rewrite | Ingenting: menyn visas när en anslutning har valts. |
| Sammanfattningar: sammanfattningar av de kanaler som användarna väljer, antingen efter begäran eller enligt schema | AISettings.Recaps | Aktivera AI-sammanfattningar i Systemkonsol › Site-konfiguration › Sammanfattningar (aktiverad som standard), vilket även anger hur många sammanfattningar användarna kan skapa. |
| Automatisk översättning | AISettings.AutoTranslation | Översättningsleverantören Modellanslutning (rekommenderas), i Automatisk översättning. |
| Text till tal | AISettings.TextToSpeech | Läs meddelanden högt på, i Text till tal. Anslutningens /audio/speech-ändpunkt ersätter adressen och nyckeln som är angivna där. |
Varje inställning har en ConnectionId- och en Model-nyckel, till exempel AISettings.Rewrite.ConnectionId (AM_AISETTINGS_REWRITE_CONNECTIONID). En tom Model använder anslutningens standardmodell.
De inbyggda funktionerna använder anslutningens begränsningar, men inte dess målgrupp: alla som kan använda funktionen kan använda dess anslutning. En anslutning som behöver uppmärksamhet, eller som har tagits bort, gör att funktionen misslyckas tills du väljer en annan: sidan anger detta.
AI-agenter
Appen Agents (id mattermost-ai) är på som standard. Att ställa in den kräver två steg: lägg till en tjänst (en anslutning till en modellleverantör) och skapa sedan agenter (bots som använder en tjänst).

1. Lägg till en tjänst
Gå till Systemkonsol › Plugin › Agenter och klicka, under AI-tjänster, på Lägg till en AI-tjänst. Välj Tjänsttyp:
- OpenAI-kompatibel: för en modellserver som du själv kör, eller för en tjänsteleverantör med ett OpenAI-liknande API. Fyll i API-URL (till exempel
http://ollama:11434/v1ellerhttp://vllm.internal:8000/v1) och API-nyckel endast om servern kräver en. Om servern endast stöder Chat Completions API, stäng av Använd Responses API. - OpenAI, Anthropic, Google Gemini, Google Vertex AI, AWS Bedrock, Azure, Cohere, Mistral: hystade tjänsteleverantörer. Var och en kräver sin API-nyckel (Bedrock: ett AWS-område och autentiseringsuppgifter eller en IAM-roll; Vertex AI: ett projekt, ett område och ett tjänstekonto; Azure: även API-URL:en).
Ange sedan Standardmodell (en lista om leverantören kan rapportera sina modeller, annars skriv namnet) samt, om leverantören inte rapporterar dem, Insättningsgräns för token och Utsättningsgräns för token. En Reservtjänst kan ta över när denna misslyckas. Spara.
Servern gör dessa anrop själv, så den måste kunna nå API:et: en modellserver i samma compose-projekt, på ditt nätverk eller på Internet. Utgående anrop respekterar variablerna HTTP_PROXY och HTTPS_PROXY.
2. Skapa agenter
Agenter skapas på sidan Agenter i webbappen: öppna den med Hantera i agentväljaren i panelen Agenter (i det klassiska gränssnittet även från produktmenyn). Dess adress är https://chat.example.com/plug/mattermost-ai/agents. Varje agent har ett Visningsnamn, ett Agentanvändarnamn (hur personer nämner den), en Tjänst och valfritt en modell, Anpassade instruktioner samt växlar för Aktivera vision (bilder) och Aktivera verktyg. Fliken Tillgång begränsar vilka kanaler den kan användas i och vilka användare som kan använda den. Under AI Functions i Systemkonsolen väljer Standardbot den agent som används när ingen är vald, till exempel för sammanfattningar av samtal.
Valfria funktioner i appen Agenter
- Sökning med inbäddningar (experimentell, av): semantisk sökning över meddelanden. Kräver PostgreSQL med utökningen pgvector och en inbäddningsmodell (OpenAI eller OpenAI-kompatibel). Den skickar varje meddelande till inbäddningsmodellen, inklusive privata kanaler och direktmeddelanden.
- Webbsökning (av): låter agenter söka på webben via Google, Brave eller en SearXNG-server du kör.
- Inbyggda verktyg: med leverantörer som erbjuder dem kan agenter använda leverantörens egen webbsökning (på som standard för nya agenter, där det stöds), webbhämtning och kodexekvering. Dessa körs hos leverantören. Stäng av dem per agent.
- Model Context Protocol (MCP): anslut agenter till MCP-servrar du litar på, för extra verktyg.
- Felsökning: Spårningsutdata (av, serverloggar eller en OpenTelemetry-slutpunkt) och Aktivera loggning av tokenanvändning, som skriver tokenantal till
logs/agents/token_usage.log.
Tal till text: transkriptioner och undertexter för samtal
Samtal kan transkriberas, med live-undertexter, av en tal-till-text-server som erbjuder en OpenAI-kompatibel /v1/audio/transcriptions-ändpunkt. Inställningarna finns under Samtal och röst. Med Sammanfatta transkriptioner aktiverat publicerar standardagenten även en sammanfattning av varje transkription.
Text-till-tal: Läs högt
När text-till-tal är aktiverat finns Läs högt i menyn för varje meddelande: servern skickar meddelandets text till ett text-till-tal-API och spelar upp ljudet. Inställningar finns under Systemkonsol › Integrationer › Text till tal:
| Inställning | Nyckel och variabel | Vad som ska anges |
|---|---|---|
| Läs meddelanden högt | TextToSpeechSettings.Enable, AM_TEXTTOSPEECHSETTINGS_ENABLE | true (av som standard) |
| API:ts bas-URL | TextToSpeechSettings.URL, AM_TEXTTOSPEECHSETTINGS_URL | Bas-URL:n upp till och med /v1, till exempel http://tts.internal:8000/v1. Servern anropar dess /audio/speech-ändpunkt. |
| Modell | TextToSpeechSettings.Model, AM_TEXTTOSPEECHSETTINGS_MODEL | Modellen med det namn API:t använder, till exempel tts-1. Obligatoriskt. |
| Röst | TextToSpeechSettings.Voice, AM_TEXTTOSPEECHSETTINGS_VOICE | En av modellens röster, eller tomt för standardvärdet. |
| API-nyckel | TextToSpeechSettings.APIKey, AM_TEXTTOSPEECHSETTINGS_APIKEY | Skickas som en bearer-token. Tomt om API:t inte kräver någon. |
För att använda en modellanslutning istället för adressen och nyckeln ovan, välj den för Text till tal i AI › Inbyggda funktioner. Sidan anger då att meddelanden läses högt med den anslutningen: API:ts bas-URL och API-nyckel används inte, Röst används fortfarande, liksom Modell när anslutningen inte anger en modell. Läs meddelanden högt måste fortfarande vara påslaget.
Före sändning tar servern bort kodblock, länkar, emojikoder och formatering, och behåller högst 4000 tecken. Den begär MP3-ljud och behåller de senaste 64 resultaten i minnet, så ett meddelande som läses två gånger skickas bara en gång.
Automatisk översättning
Automatisk översättning visar kanalens meddelanden på varje läsares eget språk. Konfigurera den i Systemkonsol › Site-konfiguration › Lokalisering, under Automatisk översättning:
| Inställning | Nyckel | Standard |
|---|---|---|
| Aktivera | AutoTranslationSettings.Enable | Av |
| Översättningstjänst | AutoTranslationSettings.Provider | connection (visas som "Model connection (recommended)", den som väljs när ingen är inställd), libretranslate, openai ("OpenAI-compatible API, set up here") eller agents ("AI chat app's service (older)") |
| Tillåtna språk | AutoTranslationSettings.TargetLanguages | en: de språk som meddelanden kan översättas till |
| Översättningstidsgräns (ms) | AutoTranslationSettings.TimeoutMs | 5000 |
| Begränsa automatisk översättning för direktmeddelanden och gruppmeddelanden | AutoTranslationSettings.RestrictDMAndGM | Av |
Varje leverantör har egna fält:
- Model connection: en serveromfattande anslutning och dess modell, samma inställning som Automatisk översättning i AI › Inbyggda funktioner (
AISettings.AutoTranslation). En dedikerad översättningsmodell är snabb och exakt; en allmän LLM fungerar också. - LibreTranslate: Slutpunkt för LibreTranslate's API och API-nyckel för LibreTranslate (
AutoTranslationSettings.LibreTranslate.URL,.APIKey). En LibreTranslate-server kan köras på ditt eget nätverk. - OpenAI-kompatibelt API: API:ts bas-URL (upp till och med
/v1; servern använder dess chat completions-slutpunkt), Modell och API-nyckel (AutoTranslationSettings.OpenAI.URL,.Model,.APIKey). En liten översättningsmodell som körs lokalt fungerar bra. - AI chat app's service (older): leverantören för servrar som konfigurerades före 0.9.0, som använde en tjänst från appen Agents. Den kräver inte längre appen: den översätter med den anslutning som valts för automatisk översättning i AI › Inbyggda funktioner, eller annars med den anslutning som kopierades från appens tjänst vid uppgraderingen. Switch to Model connection flyttar inställningen till den rekommenderade leverantören.
När det är aktiverat kan kanaladministratörer slå på översättning för en kanal i kanalens inställningar (Automatisk översättning), och varje medlem kan välja bort det från kanalmenyn (Översätt meddelanden). I direkt- och gruppmeddelanden kan vilken medlem som helst slå på det; med begränsningen på är översättning inte tillgänglig där. Översatta meddelanden visar "Översatt från …" med en länk till originalet.
Kod, länkar, omnämnanden och emojier ersätts med platshållare innan texten skickas, och sätts tillbaka efteråt.
Vilka data som går vart
| Funktion | Vad som skickas | Till |
|---|---|---|
| Omskriv | Meddelandet som skrivs, och den valda instruktionen | Den anslutning som valts för det |
| Sammanfattningar | Meddelandena i kanalerna i sammanfattningen, och personens instruktioner | Den anslutning som valts för det |
| Appar som använder modellanslutningar | Vad varje app skickar, för den person som använder den | De anslutningar den personen får använda |
| Agenter | Begäran, meddelandena i tråden eller kanalen det gäller, agentens instruktioner, verktygsresultat, bilder när vision är på, samt den frågande användarens namn, användarnamn, position och språk | Tjänstens API |
| Sökning med inbäddningar | Varje meddelande (utom bots' och systemmeddelanden) | Inbäddnings-API:t |
| Inbyggda verktyg och websökning | Sökfrågor, sidor att hämta, kod | Leverantören, eller den sökmotor du valde |
| Transkription av samtal | Rösten från alla som talar medan det är på | Röst-till-text-API:t |
| Uppläsning | Texten i meddelandet som läses | Text-till-tal-API:t, eller den anslutning som valts för det |
| Översättning | Texten i meddelandena i översatta kanaler | Modellanslutningen, LibreTranslate eller OpenAI-kompatibelt API |
För att hålla allt på ditt nätverk, peka varje funktion mot servrar du själv kör. Med en molnleverantör, kontrollera dess villkor för databevarande, och informera dina användare om vilka funktioner som skickar ut deras meddelanden.
Stänga av AI
Det finns ingen enda avstängning: varje funktion har sin egen.
- Omskrivningar och sammanfattningar: Ställ in dem till Av i Systemkonsol › AI › Inbyggda funktioner. Användare fortsätter att läsa de sammanfattningar de redan har.
- Modellanslutningar: Ta bort en anslutning för att stoppa all användning av den. Utan någon anslutning kan varken de inbyggda funktionerna eller apparna använda AI via servern.
- Agenter: Inaktivera appen Agenter i Systemkonsol › Plugin › Pluginadministration. Detta tar även bort sammanfattningar av samtal.
- Transkription och undertexter:
AM_CALLS_ENABLE_TRANSCRIPTIONS=falseochAM_CALLS_ENABLE_LIVE_CAPTIONS=false(standardvärdena). - Läs högt: Stäng av Läs meddelanden högt (
AM_TEXTTOSPEECHSETTINGS_ENABLE=false, standardinställningen), oavsett om den använder en anslutning eller inte. - Översättning: auto-translation av (
AM_AUTOTRANSLATIONSETTINGS_ENABLE=false, standardvärdet).
Att inaktivera appen Agenter stänger inte av de andra funktionerna: de använder modellanslutningar eller egna API:er.