- Mångsidig integration av språkmodeller med hjälp av API:er kompatibla med OpenAI-standarden.
- Avancerad dokumenthantering med RAG för att skapa privata och säkra kunskapsbaser.
- Flexibilitet i distributionen mellan skrivbordsversioner för individuell användning och Docker för företagsmiljöer.
- Automatiseringsmöjligheter genom intelligenta agenter och arbetsflöden kopplade till externa tjänster.
Om du vill konsultera dina egna dokument med hjälp av artificiell intelligens, AnythingLLM låter dig skapa en kunskapsbas utan att behöva utveckla hela systemet från grunden. Applikationen kan fungera med modeller som körs på datorn och med externa leverantörer som är tillgängliga via API.
En av dess främsta fördelar är att separerar systemets olika komponenterDu kan välja språkmodell, inbäddningsleverantör och vektordatabas, samt organisera dokument i arbetsytor. Denna flexibilitet gör att du kan konfigurera allt från en personlig assistent till en delad installation för flera användare.
Att installera appen är dock bara början. För pålitliga svar Modellen, anslutningen, dokumenten och behörigheterna som beviljats agenterna måste vara korrekt konfigurerade..
AnythingLLM Desktop eller Docker: Vilken version ska man välja?

AnythingLLM Desktop Den är främst utformad för en enskild person. Installeras som en vanlig applikation på Windows, macOS eller Linux och det visar sig vara det enklaste alternativet för att testa lokala modeller, konsultera dokument och använda agenter från din egen dator.
Docker är mer lämpligt när du behöver komma åt det från en webbläsare, ha programmet på en server eller dela det med andra användare. Den här versionen Det låter dig aktivera konton, roller och behörigheter. tillträde till arbetsytorna.
Du måste noggrant avgöra om du ska aktivera fleranvändarlägeEnligt AnythingLLM-dokumentationen kan en instans som växlar till det här läget inte återgå till enanvändarläge efteråt. Innan du aktiverar det, säkerhetskopiera dina data och verifiera att du verkligen behöver separata konton.
Kraven beror huvudsakligen på vilken modell som används. AnythingLLM förbrukar få resurser vid anslutning till ett externt API, men Att köra en lokal modell kan kräva en avsevärd mängd RAM eller grafikminne. Som en generell referens rekommenderar projektet 16 GB RAM och en åttakärnig processor för en grundläggande upplevelse med lokala modeller, även om den faktiska förbrukningen beror på modellen, dess kvantisering och dess kontextfönster.
Hur man installerar AnythingLLM på din dator
Installationen av AnythingLLM Desktop innebär att du laddar ner den version som motsvarar ditt operativsystem och slutför den initiala installationsguiden. Under konfigurationen kan du välja språkmodell, inbäddningsleverantör och vektordatabas.
AnythingLLM inkluderar standardinställningar för språkinställningar, inklusive LanceDB som vektordatabas. Detta låter dig komma igång. bearbeta dokument utan att driftsätta en extern databasDu kan också koppla samman olika tjänster om du behöver annan infrastruktur eller redan har det.
I Docker är det viktigt att montera en permanent volym på sökvägen. /app/server/storageOm du inte gör det kan du förlora dokument, inställningar och annan data när behållaren tas bort eller återskapas.
En grundläggande lokal installation kan driftsättas efter det officiella projektkommandot och sedan öppnas med hjälp av:
http://localhost:3001
Om du ska publicera AnythingLLM på internet bör du inte bara öppna dess port. Konfigurera HTTPS, autentisering, säkerhetskopior och en omvänd proxy, och håll både avbildningen och värdsystemet uppdaterade.
Hur man ansluter AnythingLLM till OpenAI och andra API:er

För att använda en modell via API, öppna AnythingLLM-inställningarna och gå till språkleverantörens konfiguration. OpenAI har en specifik integration där du måste ange en API-nyckel och välj en av de tillgängliga modellerna.
Nyckeln som används i API:et är inte nödvändigtvis densamma som för en ChatGPT-prenumeration. Användning av modeller via API:et faktureras och hanteras separat, så det är lämpligt att sätta utgiftsgränser och övervaka din användning.
AnythingLLM erbjuder även leverantören Generisk OpenAIDet här alternativet låter dig ansluta tjänster vars API är kompatibelt med det format som förväntas av OpenAI, vanligtvis genom att ange bas-URL:en, nyckeln, modellidentifieraren, kontextfönstret och utdatagränsen.
Du kan använda den här konfigurationen med en kompatibel gateway som CometAPI, förutsatt att den erbjuder en slutpunkt som stöds av AnythingLLM. I så fall måste du använda exakt den URL och modellidentifierare som tillhandahålls av leverantören. Inte alla tjänster som annonseras som kompatibla implementerar samma funktioner, särskilt streaming och verktygsanvändning.
Publicera aldrig din riktiga nyckel eller inkludera den i skärmdumpar. Om du misstänker att den har läckt ut, återkalla den och skapa en ny från leverantörens instrumentpanel.
Hur man ansluter Ollama när man använder Docker

När AnythingLLM Desktop och Ollama körs på samma dator kan programmet automatiskt identifiera den lokala adressen:
http://127.0.0.1:11434
Situationen ändras om AnythingLLM finns inuti Docker. I så fall, localhost Den pekar på själva behållaren och inte på värddatorn där Ollama körs.
På Windows och macOS bör du prova:
http://host.docker.internal:11434
På Linux rekommenderar AnythingLLM-dokumentationen att använda:
http://172.17.0.1:11434
Adressen kan ändras om du har ändrat Docker-nätverket. Kontrollera också att Ollama körs, att modellen har laddats ner och att servern tillåter anslutningar från rätt adress. Exponera inte Ollama-porten offentligt utan autentisering och ytterligare säkerhetsåtgärder.
Hur man lägger till dokument och konfigurerar RAG

Arbetsytor låter dig separera dokument, instruktioner och konversationer efter projekt. I en miljö med flera användare kommer dokument som läggs till via RAG att vara tillgängliga för alla med åtkomst till motsvarande arbetsyta, så du bör granska deras behörigheter innan du lägger till konfidentiell information.
Med AnythingLLM kan du arbeta med dokument på två sätt: du kan koppla dem direkt till en tråd för att inkludera deras innehåll i modellkontexten, eller bearbeta dem med hjälp av RAG:er för att... dela upp dem i fragment och hämta endast de som är mest relaterade till varje fråga.
Att bifoga hela texten kan ge mer sammanhang, men det förbrukar fler tokens och begränsas av det fönster som stöds av modellen. RAG:er är mer lämpade för stora samlingar, även om kvaliteten beror på klippning, inbäddningsmodellen, frågan och hämtningsinställningarna.
Att bara lagra en fil i dokumenthanteraren räcker inte. Om du vill att den ska vara tillgänglig via RAG måste du lägga till den i arbetsytan och bearbeta den för att generera dess inbäddningar.
Om AnythingLLM inte hittar information som du vet finns där, kontrollera dessa alternativ:
- Likhetströskel: Ett mycket restriktivt värde kan förkasta relevanta fragment.
- Maximalt antal fragment: avgör hur mycket hämtad kontext som skickas till modellen.
- Frågeläge: Det begränsar svaren till innehållet i dokumenten.
- Omrankning: Det kan förbättra urvalet av resultat i utbyte mot mer bearbetning.
- Inbäddningsmodell: Det måste vara lämpligt för språket och innehållets typ.
Det finns ingen perfekt tröskel för alla samlingar. Ställ flera frågor vars svar du vet och justera inställningarna genom att jämföra de hämtade fragmenten.
Hur man använder AnythingLLM-agenter
Agenter låter modellen använda verktyg utöver att bara generera text. Beroende på konfigurationen kan de söka i dokument, söka på webben, extrahera innehåll från sidor, skapa grafik, spara filer eller utföra andra tillgängliga åtgärder.
På vissa modeller måste du logga in genom att skriva @agent följt av begäran. När leverantören stöder automatisk användning av verktyg kan chatten direkt gå in i agentläge. För att manuellt avsluta en session som startats på detta sätt kan du använda /exit.
Kompatibilitet beror på modellen och leverantören. En modell som svarar korrekt i en standardchatt betyder inte nödvändigtvis att den kommer att köra verktyg på ett tillförlitligt sätt. Med generiska leverantörer kan det också vara nödvändigt att explicit aktivera stöd för verktygsanrop.
Innan du beviljar åtkomst till externa filer, databaser eller tjänster, begränsa behörigheter och testa agenten med icke-nödvändiga data. En agent kan misstolka en instruktion, upprepa en åtgärd eller använda ett annat verktyg än förväntat.
Hur man skapar anpassade färdigheter och automatiseringar
Med AnythingLLM kan du utöka agenter med anpassade färdigheter. En färdighet kan ansluta till ett API, fråga en databas eller skicka en begäran till en webhook från tjänster som Make eller Zapier.
Detta gör att du kan skapa processer som att fråga dokument och förbereda de data som behövs för att uppdatera ett ark, registrera en uppgift eller skicka ett meddelande. Det är dock inte lämpligt att ge modellen möjligheten att direkt utföra oåterkalleliga åtgärder.
För känsliga transaktioner, använd ett arbetsflöde med mänsklig bekräftelse. Agenten kan förbereda ett förslag, men en person bör validera resultatet innan information tas bort, meddelanden skickas, viktiga poster ändras eller en betalning initieras.
Du bör också kontrollera alla färdigheter som laddats ner från externa källor. Dessa tillägg kan exekvera kod och komma åt data som tillhandahålls av agenten. AnythingLLM håller nedladdningen av vissa communitypaket inaktiverad som standard just på grund av denna risk.
Hur man förbättrar svar och åtgärdar fel
Om modellen inte svarar, kontrollera först leverantörens URL, nyckelgiltigheten, den exakta modellidentifieraren och AnythingLLM-loggarna. I Docker bör du också kontrollera anslutningen mellan containern och eventuella tjänster som är installerade på värddatorn.
När svaren avbryts, kontrollera kontextfönstret och det maximala antalet utdatatokens. Dessa värden måste respektera gränserna för den modell som används. Att öka dem i AnythingLLM utökar inte API:ets faktiska möjligheter.
Om svaren inte använder dokumenten korrekt, prova frågeläge, minska alltför vaga frågor och granska de hämtade utdragen. Att tillfälligt inaktivera likhetsgränsbegränsningen kan hjälpa dig att kontrollera om systemet ignorerade användbar information.
För att bearbetningen ska fortsätta inom maskinen måste du använda en lokal modell, en lokal inbäddningsleverantör och en lokal vektordatabas. Du måste också undvika webbsökningar, externa API:er och alla funktioner som skickar information utanför maskinen. Endast under dessa förhållanden kan det i huvudsak betraktas som offline.
AnythingLLM kan bli ett mycket användbart verktyg för att konsultera manualer, organisera dokumentation eller skapa interna guider. Dess största fördel ligger inte bara i att koppla samman många modeller, utan i att varje användare kan kombinera den modell, de dokument och de verktyg de faktiskt behöver. För att systemet ska vara tillförlitligt är det lämpligt att börja med ett litet utrymme, verifiera de hämtade källorna och bara utöka agentbehörigheter när arbetsflödet har testats.
Jag är en teknikentusiast som har gjort sina "nördar"-intressen till ett yrke. Jag har tillbringat mer än 10 år av mitt liv med att använda den senaste tekniken och mixtrat med alla typer av program av ren nyfikenhet. Nu har jag specialiserat mig på datateknik och tv-spel. Detta beror på att jag i mer än 5 år har arbetat med att skriva för olika webbplatser om teknik och videospel, skapa artiklar som försöker ge dig den information du behöver på ett språk som är begripligt för alla.
Om du har några frågor sträcker sig min kunskap från allt som rör operativsystemet Windows samt Android för mobiltelefoner. Och mitt engagemang är för dig, jag är alltid villig att spendera några minuter och hjälpa dig att lösa alla frågor du kan ha i den här internetvärlden.