Rumah >pembangunan bahagian belakang >Tutorial Python >Jimat masa dengan Amazon Bedrock Converse API!

Jimat masa dengan Amazon Bedrock Converse API!

Linda Hamilton
Linda Hamiltonasal
2024-12-03 03:40:08240semak imbas

Dengan Bedrock anda mendapat akses pelbagai model bahasa besar yang berbeza, (contohnya, Claude, Mistral, Llama dan Amazon Titan) dengan versi baharu tersedia sepanjang masa.

Memiliki pilihan memang bagus, tetapi perlu mengekodkan permintaan anda secara berbeza untuk setiap model memang menyusahkan.

Inilah sebabnya Amazon Bedrock Converse API akan menjimatkan banyak masa dan usaha anda, apabila membandingkan output model asas yang berbeza!

Konsisten adalah kunci!

API Converse ialah antara muka yang konsisten yang berfungsi dengan semua model yang menyokong mesej / gesaan sistem. Ini bermakna anda boleh menulis kod anda sekali dan menggunakannya untuk mencuba model yang berbeza.

Berikut ialah contoh cara ia berfungsi dan latihan ini sepatutnya menelan kos < $1.

Konfigurasikan akses model

Sebelum anda bermula, pastikan anda menyemak sama ada model yang anda ingin gunakan tersedia di rantau anda dan anda telah mendayakan akses kepada model tersebut, berikut adalah model yang saya gunakan, anda boleh memilihnya atau memilih model anda sendiri :
anthropic.claude-v2
anthropic.claude-3-haiku
Claude 3.5 Sonnet
Mistral kecil

Save time with the Amazon Bedrock Converse API!

1) Kita boleh melakukan segala-galanya menggunakan CloudShell dalam konsol AWS.

Save time with the Amazon Bedrock Converse API!

2) Apabila CloudShell sedia, pasang boto3 iaitu AWS SDK untuk Python
pip pasang boto3

Save time with the Amazon Bedrock Converse API!

3) Muat turun fail bernama converse_demo.py daripada GitHub Anda boleh melakukan ini menggunakan wget dan menyediakan laluan mentah ke fail:

wget https://raw.githubusercontent.com/fayekins/demos/refs/heads/main/converse_demo.py

Save time with the Amazon Bedrock Converse API!

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) Jalankan kod Python seperti ini:

python converse_demo.py

Ia sepatutnya memberi anda output yang serupa dengan ini:

Save time with the Amazon Bedrock Converse API!

5) Kami juga boleh menjalankan kod yang sama ini menggunakan model yang berbeza, dengan menggantikan ID model dalam kod kami seperti berikut:

anthropic.claude-3-haiku-20240307-v1:0

Bandingkan output daripada model kedua, ia sedikit berbeza:

Save time with the Amazon Bedrock Converse API!

6) Kami boleh menguji sekali lagi dengan versi lain:

anthropic.claude-3-5-sonnet-20240620-v1:0

Save time with the Amazon Bedrock Converse API!

Apabila versi baharu Claude dikeluarkan, kami boleh meminta akses dan kemudian hanya menggantikan nama model dalam kod kami!

Ralat dinafikan akses

Jika anda melihat ralat yang serupa dengan ini, ini bermakna anda cuba menggunakan model yang anda belum mempunyai akses. Hanya minta akses kepada model ke, dan cuba lagi selepas akses diberikan.

Save time with the Amazon Bedrock Converse API!

7) Saya juga mencubanya dengan pembekal model yang berbeza, dengan menukar id model kepada:

mistral.mistral-small-2402-v1:0

Save time with the Amazon Bedrock Converse API!

Jadi Converse API memberikan anda API yang mudah dan konsisten, yang berfungsi dengan semua model Amazon Bedrock yang menyokong mesej. Dan ini bermakna anda boleh menulis kod anda sekali dan menggunakannya dengan model yang berbeza untuk membandingkan hasilnya!

Jadi lain kali anda bekerja dengan Bedrock, bantu diri sendiri, cuba Converse API, dan terima kasih nanti!

Atas ialah kandungan terperinci Jimat masa dengan Amazon Bedrock Converse API!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn