Heim >Backend-Entwicklung >Python-Tutorial >Sparen Sie Zeit mit der Amazon Bedrock Converse API!
Mit Bedrock erhalten Sie Zugriff auf eine Reihe verschiedener großer Sprachmodelle (z. B. Claude, Mistral, Llama und Amazon Titan), wobei ständig neue Versionen verfügbar sind.
Die Wahl zu haben ist großartig, aber die Anforderungen für jedes Modell unterschiedlich zu codieren, ist mühsam.
Deshalb erspart Ihnen die Amazon Bedrock Converse API eine Menge Zeit und Mühe, wenn Sie die Ergebnisse verschiedener Foundation-Modelle vergleichen!
Die Converse API ist eine konsistente Schnittstelle, die mit allen Modellen funktioniert, die Nachrichten/Systemaufforderungen unterstützen. Das bedeutet, dass Sie Ihren Code einmal schreiben und ihn zum Experimentieren mit verschiedenen Modellen verwenden können.
Hier ist ein Beispiel dafür, wie es funktioniert. Diese Übung sollte < 1 $.
Bevor Sie beginnen, überprüfen Sie unbedingt, ob die Modelle, die Sie verwenden möchten, in Ihrer Region verfügbar sind und ob Sie den Zugriff darauf aktiviert haben. Hier sind die Modelle, die ich verwende. Sie können diese oder Ihre eigenen auswählen :
anthropic.claude-v2
anthropic.claude-3-haiku
Claude 3.5 Sonett
Mistral klein
1) Wir können alles mit der CloudShell in der AWS-Konsole erledigen.
2) Wenn die CloudShell bereit ist, installieren Sie boto3, das AWS SDK für Python
pip install boto3
3) Laden Sie die Datei converse_demo.py von GitHub herunter. Sie können dies mit wget tun und den Rohpfad zur Datei angeben:
wget https://raw.githubusercontent.com/fayekins/demos/refs/heads/main/converse_demo.py
#first we import boto3 and json import boto3, json #create a boto3 session - stores config state and allows you to create service clients session = boto3.Session() #create a Bedrock Runtime Client instance - used to send API calls to AI models in Bedrock bedrock = session.client(service_name='bedrock-runtime') #here's our prompt telling the model what we want it to do, we can change this later system_prompts = [{"text": "You are an app that creates reading lists for book groups."}] #define an empty message list - to be used to pass the messages to the model message_list = [] #here’s the message that I want to send to the model, we can change this later if we want initial_message = { "role": "user", "content": [{"text": "Create a list of five novels suitable for a book group who are interested in classic novels."}], } #the message above is appended to the message_list message_list.append(initial_message) #make an API call to the Bedrock Converse API, we define the model to use, the message, and inference parameters to use as well response = bedrock.converse( modelId="anthropic.claude-v2", messages=message_list, system=system_prompts, inferenceConfig={ "maxTokens": 2048, "temperature": 0, "topP": 1 }, ) #invoke converse with all the parameters we provided above and after that, print the result response_message = response['output']['message'] print(json.dumps(response_message, indent=4))
4) Führen Sie den Python-Code wie folgt aus:
python converse_demo.py
Sie sollten eine Ausgabe erhalten, die dieser ähnelt:
5) Wir können denselben Code auch mit einem anderen Modell ausführen, indem wir die Modell-ID in unserem Code wie folgt ersetzen:
anthropic.claude-3-haiku-20240307-v1:0
Vergleichen Sie die Ausgabe des zweiten Modells, sie ist etwas anders:
6) Wir können noch einmal mit einer anderen Version testen:
anthropic.claude-3-5-sonnet-20240620-v1:0
Wenn eine neue Version von Claude veröffentlicht wird, können wir Zugriff anfordern und dann einfach den Namen des Modells in unserem Code ersetzen!
Wenn Sie einen ähnlichen Fehler sehen, bedeutet das lediglich, dass Sie versuchen, ein Modell zu verwenden, auf das Sie noch keinen Zugriff haben. Fordern Sie einfach Zugriff auf das Modell an und versuchen Sie es erneut, nachdem der Zugriff gewährt wurde.
7) Ich habe es auch bei einem anderen Modellanbieter versucht, indem ich die Modell-ID geändert habe in:
mistral.mistral-small-2402-v1:0
Die Converse-API bietet Ihnen also eine einfache, konsistente API, die mit allen Amazon Bedrock-Modellen funktioniert, die Nachrichten unterstützen. Und das bedeutet, dass Sie Ihren Code einmal schreiben und ihn mit verschiedenen Modellen verwenden können, um die Ergebnisse zu vergleichen!
Wenn Sie also das nächste Mal mit Bedrock zusammenarbeiten, tun Sie sich selbst einen Gefallen, probieren Sie die Converse-API aus und bedanken Sie sich später bei mir!
Das obige ist der detaillierte Inhalt vonSparen Sie Zeit mit der Amazon Bedrock Converse API!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!