Heim >Backend-Entwicklung >Python-Tutorial >Erstellen und implementieren Sie eine serverlose OpenAI-App in wenigen Codezeilen
? Möchten Sie eine interaktive KI-App erstellen und bereitstellen ?? ??? ?????in nur ? ????? ?? ?????
In diesem Tutorial verwenden Sie LlamaIndex, um eine Q&A-Engine zu erstellen, FastAPI, um sie über HTTP bereitzustellen, und DBOS, um sie serverlos in der Cloud bereitzustellen.
Es basiert auf dem 5-Zeilen-Starter von LlamaIndex und verfügt nur über 4 zusätzliche Zeilen, um es cloudfähig zu machen. Einfach, schnell und skalierbar!
Erstellen Sie zunächst einen Ordner für Ihre App und aktivieren Sie eine virtuelle Umgebung.
python3 -m venv ai-app/.venv cd ai-app source .venv/bin/activate touch main.py
Dann installieren Sie Abhängigkeiten und initialisieren eine DBOS-Konfigurationsdatei.
pip install dbos llama-index dbos init --config
Als nächstes benötigen Sie zum Ausführen dieser App ein OpenAI-Entwicklerkonto. Hier erhalten Sie einen API-Schlüssel. Legen Sie den API-Schlüssel als Umgebungsvariable fest.
export OPENAI_API_KEY=XXXXX
Deklarieren Sie die Umgebungsvariable in dbos-config.yaml:
env: OPENAI_API_KEY: ${OPENAI_API_KEY}
Lassen Sie uns zum Schluss noch einige Daten herunterladen. Diese App verwendet den Text aus Paul Grahams „What I Worked On“. Sie können den Text über diesen Link herunterladen und unter data/paul_graham_essay.txt Ihres App-Ordners speichern.
Jetzt sollte Ihre App-Ordnerstruktur so aussehen:
ai-app/ ├── dbos-config.yaml ├── main.py └── data/ └── paul_graham_essay.txt
Jetzt verwenden wir LlamaIndex, um eine einfache KI-Anwendung in nur 5 Codezeilen zu schreiben.
Fügen Sie den folgenden Code zu Ihrer main.py hinzu:
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader documents = SimpleDirectoryReader("data").load_data() index = VectorStoreIndex.from_documents(documents) query_engine = index.as_query_engine() response = query_engine.query("What did the author do growing up?") print(response)
Dieses Skript lädt Daten und erstellt einen Index für die Dokumente im Ordner „data/“ und generiert eine Antwort durch Abfragen des Index. Sie können dieses Skript ausführen und es sollte Ihnen eine Antwort geben, zum Beispiel:
$ python3 main.py The author worked on writing short stories and programming...
Jetzt fügen wir einen FastAPI-Endpunkt hinzu, um Antworten über HTTP bereitzustellen. Ändern Sie Ihre main.py wie folgt:
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader from fastapi import FastAPI app = FastAPI() documents = SimpleDirectoryReader("data").load_data() index = VectorStoreIndex.from_documents(documents) query_engine = index.as_query_engine() @app.get("/") def get_answer(): response = query_engine.query("What did the author do growing up?") return str(response)
Jetzt können Sie Ihre App mit fastapi run main.py starten. Um zu sehen, dass es funktioniert, besuchen Sie diese URL: http://localhost:8000
Das Ergebnis kann jedes Mal, wenn Sie Ihr Browserfenster aktualisieren, etwas anders sein!
Um Ihre App in der DBOS Cloud bereitzustellen, müssen Sie nur zwei Zeilen zu main.py hinzufügen:
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader from fastapi import FastAPI from dbos import DBOS app = FastAPI() DBOS(fastapi=app) documents = SimpleDirectoryReader("data").load_data() index = VectorStoreIndex.from_documents(documents) query_engine = index.as_query_engine() @app.get("/") def get_answer(): response = query_engine.query("What did the author do growing up?") return str(response)
Jetzt installieren Sie die DBOS Cloud CLI, falls Sie dies noch nicht getan haben (erfordert Node.js):
npm i -g @dbos-inc/dbos-cloud
Dann werden die Abhängigkeiten zu „requirements.txt“ eingefroren und in der DBOS-Cloud bereitgestellt:
pip freeze > requirements.txt dbos-cloud app deploy
In weniger als einer Minute sollte Folgendes angezeigt werden: Greifen Sie auf Ihre Anwendung unter
Um zu sehen, ob Ihre App funktioniert, besuchen Sie
Herzlichen Glückwunsch, Sie haben Ihre erste KI-App erfolgreich in DBOS Cloud bereitgestellt! Sie können Ihre bereitgestellte App in der Cloud-Konsole sehen.
Dies ist erst der Anfang Ihrer DBOS-Reise. Sehen Sie sich als Nächstes an, wie DBOS Ihre KI-Anwendungen skalierbarer und belastbarer machen kann:
Probieren Sie es aus und teilen Sie mir Ihre Meinung mit?
Das obige ist der detaillierte Inhalt vonErstellen und implementieren Sie eine serverlose OpenAI-App in wenigen Codezeilen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!