Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan Pemahaman Dokumen Nova melalui API
Untuk mengilustrasikan cara menggunakan Amazon Nova untuk dokumen QA (Question-Answering) atau analisis, berikut adalah contoh sederhana dalam Python. Kami akan menggunakan API AWS Bedrock (melalui Boto3 SDK) untuk mengirim dokumen PDF bersama dengan pertanyaan untuk dijawab model.
import base64 import base64 import json import boto3 # Initialize Bedrock runtime client (adjust region as needed) client = boto3.client("bedrock-runtime", region_name="us-east-1") MODEL_ID = "us.amazon.nova-lite-v1:5" # using Nova Lite model in this example # Read the document file (PDF) in binary mode with open("my_document.pdf", "rb") as file: doc_bytes = file.read() # Construct the conversation messages with document + question messages = [ { "role": "user", "content": [ { "document": { "format": "pdf", "name": "Document1", # neutral name for the document "source": { "bytes": doc_bytes # embedding the PDF content directly } } }, { "text": "Here is a question about the document: ... (your question) ... ?" } ] } ] # Set inference parameters (optional) inf_params = {"maxTokens": 4000, "topP": 0.1, "temperature": 0.3} # Invoke the model response = client.converse(modelId=MODEL_ID, messages=messages, inferenceConfig=inf_params) # Extract and print the answer answer_text = response["output"]["message"]["content"][0]["text"] print(answer_text)
Jika file input Anda besar (melebihi batas unggah langsung 25 MB) atau Anda memiliki banyak file, Anda dapat menyimpannya di Amazon S3 dan mereferensikannya. Ini menghindari pengiriman byte mentah melalui permintaan. Saat menggunakan S3, pastikan layanan Bedrock memiliki izin untuk mengakses ember/objek. Misalnya, untuk mereferensikan PDF di S3, sumber dokumen Anda akan menggunakan “S3location” alih-alih “byte”, seperti:
messages = [ { "role": "user", "content": [ { "document": { "format": "pdf", "name": "Report2023", "source": { "s3Location": { "uri": "s3://your-bucket/path/to/document1.pdf", "bucketOwner": "123456789012" } } } }, { "text": "Summarize the key findings from the Q3 2023 report." } ] } ]
catatan
Nama dokumen hanya dapat mencakup karakter alfanumerik, tanda hubung, tanda kurung, dan tanda kurung siku.
nameBidang ini rentan terhadap suntikan cepat, karena model mungkin secara tidak sengaja menafsirkannya sebagai instruksi. Oleh karena itu, kami menyarankan Anda menentukan nama netral.