Ein POC, der GPT 4 Vision API verwendet, um eine digitale Form aus einem Bild mit JSON -Formularen aus https://jsonForms.io/ zu generieren
? Inspiriert von:
Beide Repositorys zeigen, dass die GPT4 -Sicht -API verwendet werden kann, um eine Benutzeroberfläche aus einem Bild zu erzeugen und die Muster und die Struktur des im Bild bereitgestellten Layouts zu erkennen.

Klicken Sie auf das Miniaturbild, um auf YouTube zu sehen:
https://nathanfhh.github.io/digital-form-with-gpt4-vision-api/
Ich verwende PDF.js, um die PDF -Datei zu verarbeiten und die API von Öffnen zu eröffnen, um die Antwort vollständig im Browser zu generieren.
cd into frontend directory cd ai-json-formnpm install
npm run devcd into directory cd backendpoetry install
# alternatively, you can use pip install
pip install -r requirements.txt export OPENAI_API_KEY=
# optional
export OPENAI_ORG=Wenn Sie nur die Scheinantwort verwenden möchten, sollten Sie openai_api_key auf einen beliebigen Wert festlegen.
python main.py echo " OPENAI_API_KEY=YOUR_API_KEY " > .env
# The following is optional
echo " OPENAI_ORG=YOUR_ORG " >> .envdocker-compose up --buildhttp://localhost:8080/aijsv/ Ich bin neu in Vue, daher ist der Code möglicherweise nicht die beste Praxis. Ich lerne immer noch und verbessere mich. Sollten Sie Vorschläge haben, können Sie PR auch PR haben.
Laden Sie PDF -Dateien mit bis zu drei Seiten aus dem Frontend hoch
If you want to adjust the number of pages, you can change the
MAX_PDF_PAGESvariable inbackend/app/socket.py
Wenn das Backend die PDF -Datei im Basis64 -String -Format empfängt, werden die folgenden Prozesse durchgeführt:
pdf2image .PyPDF2 . Die extrahierten Saiten werden Teil der Eingabeaufforderung, die an das GPT4 -Modell gesendet wird, um die Genauigkeit zu verbessern. Whenever the frontend receives the chunk, it appends it to the codemirror editor, and checks if the current content is a valid YAML. Wenn es sich um ein gültiges YAML handelt, wird es auf das JSON-Schema angewendet, um die Benutzeroberfläche zum erneuten Render zu zwingen.