Curiosity ist ein Projekt zum Erforschen und Experimentieren, bei dem vor allem die LangGraph und FastHTML Technologie-Stacks, mit dem Ziel, eine Perplexität AI des Suchprodukts. Das Herzstück des Projekts ist eine einfache ReAct Agent, der die Tavily Curiosity unterstützt eine Vielzahl von großen Sprachmodellen (LLMs), darunter gpt-4o-mini von OpenAI, llama3-groq-8b-8192-tool-use-preview von Groq und das Ollama Das Projekt konzentriert sich nicht nur auf die technische Umsetzung, sondern verwendet auch viel Zeit auf das Front-End-Design, um ein hochwertiges visuelles und interaktives Erlebnis zu gewährleisten.

Funktionsliste
- Verwendung von LangGraph und dem FastHTML-Technologie-Stack
- Integrierte Tavily-Suche Verbesserte Texterstellung
- Unterstützung für mehrere LLMs, einschließlich gpt-4o-mini, llama3-groq und llama3.1
- Bietet flexible Back-End-Switching-Funktionen
- Das Frontend ist mit FastHTML aufgebaut und unterstützt WebSockets-Streaming.
Hilfe verwenden
Installationsschritte
- Klon-Lagerhaus:
git clone https://github.com/jank/curiosity
- Stellen Sie sicher, dass Sie den neuesten Python3-Interpreter haben.
- Richten Sie die virtuelle Umgebung ein und installieren Sie die Abhängigkeiten:
python3 -m venv venv source venv/bin/activate pip install -r requirements.txt
- einrichten. .envund setzen Sie die folgenden Variablen:OPENAI_API_KEY=<your_openai_api_key> GROQ_API_KEY=<your_groq_api_key> TAVILY_API_KEY=<your_tavily_api_key> LANGCHAIN_TRACING_V2=true LANGCHAIN_ENDPOINT="https://api.smith.langchain.com" LANGSMITH_API_KEY=<your_langsmith_api_key> LANGCHAIN_PROJECT="Curiosity"
- Führen Sie das Projekt aus:
python curiosity.py
Leitlinien für die Verwendung
- Initiierung von Projekten: Lauf python curiosity.pyDanach wird das Projekt auf dem lokalen Server gestartet und ausgeführt.
- LLM wählenWählen Sie das geeignete LLM (z. B. gpt-4o-mini, llama3-groq oder llama3.1) entsprechend Ihren Bedürfnissen.
- Suche mit TavilyReAct Agent: Geben Sie eine Anfrage in einen Dialog ein und der ReAct Agent erweitert die Texterstellung um die Tavily-Suche.
- Front-End-InteraktionDas Frontend des Projekts wurde mit FastHTML erstellt und unterstützt WebSockets-Streaming, um Echtzeit-Reaktionen zu gewährleisten.
allgemeine Probleme
- Wie man den LLM wechselt: in .envDatei, um den entsprechenden API-Schlüssel zu konfigurieren und die gewünschte LLM beim Start des Projekts auszuwählen.
- WebSockets-ProblemeWenn Sie Probleme mit dem Schließen von WebSockets ohne ersichtlichen Grund haben, sollten Sie Ihre Netzwerkverbindung und Ihre Serverkonfiguration überprüfen.































 Deutsch
Deutsch				 简体中文
简体中文					           English
English					           日本語
日本語					           Português do Brasil
Português do Brasil