Mandantenfähiger, kopfloser RAG-Chatbot.
Dies ist eine einfache Implementierung eines mandantenfähigen Chatbots, der die Retrieval Augmented Generation verwendet.
Ein Teil dieses Codes stammt von Wanderling, aber alle spielspezifischen Funktionen und die Regel-Engine wurden herausgeschnitten (noch nicht bereit, diese als Open Source zu veröffentlichen).
Kopieren Sie die Datei example.env
nach .env
Aktualisieren Sie die Werte für openai und pinecone.
make dev
Öffnen Sie http://localhost:8080/swagger-ui/index.html
Zur Konfiguration der Anwendung werden Federprofile verwendet.
Sehen Sie sich einige Beispielkonfigurationen an (./src/main/resources/)[./src/main/resources/]
Die Konfiguration kann in YAML, Eigenschaften oder Umgebungsvariablen festgelegt werden.
OPENAI_ENABLED=true
OPENAI_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxx
OPENAI_CHAT_MODEL_ID=gpt-3.5-turbo
PINECONE_ENABLED=true
PINECONE_API_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
PINECONE_PROJECT_NAME=my-project
PINECONE_INDEX=my-index
PINECONE_ENVIRONMENT=us-east4-gcp
APP_SECURITY_ENABLED=false
Weitere Einzelheiten finden Sie in der Anwendungskonfiguration in application-opensearch.yml.
SPRING_PROFILES_ACTIVE=opensearch
OPENAI_ENABLED=true
OPENAI_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxx
OPENAI_CHAT_MODEL_ID=gpt-3.5-turbo
OPENSEARCH_URL=https://localhost:9200
Wenn Sie Dokumente in Ihrem Repository speichern, können Sie diese problemlos auf Mainbot hochladen.
Nutzen Sie die GitHub-Aktion, um Text-/Markdown-Dateien direkt auf den Mainbot hochzuladen.
name : Upload Files to Mainbot
on :
workflow_dispatch : {} # Manually trigger the workflow
push :
branches :
- main
paths :
- ' docs/** '
- ' README.md '
jobs :
upload :
runs-on : ubuntu-latest
steps :
- name : Checkout repository
uses : actions/checkout@v2
- name : Upload Files
uses : savantly-net/mainbot-github-action@main
with :
glob-patterns : ' *.md ' # Set your file pattern here
namespace : ' /mainbot-documents '
api-url : ' https://mainbot.my-company.apps.savantly.cloud '
client-id : ${{ secrets.MAINBOT_CLIENT_ID }}
client-secret : ${{ secrets.MAINBOT_CLIENT_SECRET }}
token-endpoint : https://oidc.apps.savantly.cloud/realms/savantly/protocol/openid-connect/token
Wir haben auch ein Backstage-Plugin zur Integration mit Mainbot erstellt.
Durch die Kombination der Github-Aktion und des Techdocs-Plugins können Sie Ihre gesamte Dokumentation sofort in Backstage verfügbar und im Mainbot durchsuchbar machen.