Agen untuk Amazon Bedrock memungkinkan pengembang untuk membuat agen percakapan yang memahami bahasa alami melalui model pondasi (FMS). Dalam posting blog ini, saya akan membuat agen Amazon Bedrock yang memungkinkan pengguna untuk berinteraksi dengan tabel Amazon DynamoDB dan basis pengetahuan untuk Amazon Bedrock menggunakan bahasa alami.
Saya akan memandu Anda melalui pengaturan sumber daya, mendefinisikan grup tindakan agen, mengaitkan fungsi AWS Lambda untuk menjalankan operasi DynamoDB, dan mengintegrasikan basis pengetahuan untuk meningkatkan pengalaman percakapan untuk memberikan tanggapan yang lebih personal dan sadar konteks terhadap pertanyaan pengguna. Semua ini dengan perintah 'CDK Deploy' menggunakan AWS Cloud Development Kit (CDK).
Pada akhirnya, Anda akan memahami cara membangun agen percakapan yang cerdas yang menyederhanakan interaksi basis data, memberikan tanggapan yang dipersonalisasi, dan memberikan pengalaman yang ramah pengguna.

Agen ini bertindak sebagai antarmuka bagi pengguna untuk memasukkan informasi dan membuat permintaan.
Tindakan pengguna memicu fungsi AWS Lambda berdasarkan definisi grup tindakan, tindakan yang dapat membantu pengguna melakukan tiga tindakan utama: spanappointment, getAppointment, dan AskTodayDate.
? Definisi grup aksi ada di ag_data.json dan Definisi Bedrock Amazon ada di agen_data.json
Fungsi spanappointment dan getAppointment berinteraksi dengan tabel Amazon DynamoDB. Ini menyimpan dan mengambil data janji temu sesuai kebutuhan.
Fungsi AskTodayDate mengambil informasi tanggal saat ini, yang kemudian disampaikan kembali ke pengguna melalui agen untuk Amazon Bedrock. Ini memungkinkan pengguna untuk menerima pembaruan waktu nyata dan konfirmasi mengenai tindakan penjadwalan janji temu mereka.
Memanfaatkan informasi yang disimpan di basis pengetahuan, agen kemudian dapat menawarkan rekomendasi pijat yang dipersonalisasi yang disesuaikan dengan kebutuhan unik pelanggan. Ini dapat menyarankan jenis pijat, durasi, dan layanan tambahan yang paling cocok yang dapat meningkatkan pengalaman spa mereka dan mengatasi masalah spesifik mereka.
Misalnya, jika pelanggan menyebutkan nyeri leher dan kekakuan, agen dapat menarik dari basis pengetahuan dan merekomendasikan pijatan jaringan dalam yang berfokus pada area leher dan bahu, dikombinasikan dengan terapi batu panas untuk menambah relaksasi dan menghilangkan otot.
✅ AWS Level : Intermediate - 200
Prasyarat:
? Biaya untuk menyelesaikan :
✅ Kloning repo
git clone https://github.com/build-on-aws/bedrock-agent-appointment-manager-dynamodb
✅ Pergi ke :
cd agent-appointment-manage
Buat basis pengetahuan AMZON dengan mengikuti langkah -langkah ini dan menggunakan data ini, lalu di kb_data.json mengedit nilai "pengetahuan_base_id":
{
"description_kb": "Recommend the best massage. Recommend the best massage according to the user's preferences",
"knowledge_base_id": "XXXXXXXXXX"
}
✅ Buat lingkungan virtual : dengan mengikuti langkah -langkah di readme
python3 -m venv .venv
source .venv/bin/activate
untuk windows:
.venvScriptsactivate.bat
✅ Pasang persyaratan :
pip install -r requirements.txt
✅ Sintesis Template CloudFormation dengan perintah berikut :
cdk synth --all
✅ Penempatan :
cdk deploy --all
Coba agen di konsol Amazon Bedrock dan tingkatkan instruksi agen sampai Anda menemukan hasil terbaik.


Kode ini dirancang untuk membangun tiga jenis agen:
Jenis agen yang sedang dibangun didefinisikan pada baris 130 dari agent_appointment_manager_stack.py. Konstruksi masing -masing jenis agen tergantung pada keberadaan file definisi JSON untuk basis pengetahuan dan kelompok tindakan.
if kb_data and not ag_data :
agent_name = "spa_agent_withKB"
print ( "KB data" )
agent_knowledge_base_property = create_kb_property ( kb_data )
ag = CreateAgentWithKB ( self , "agentwithkb" , agent_name , agent_data [ "foundation_model" ], agent_data [ "agent_instruction" ], agent_data [ "description" ], agent_knowledge_base_property , agent_resource_role . arn )
elif ag_data and not kb_data :
agent_name = "spa_agent_withag"
print ( "AG data" )
agent_action_group_properties = agent_action_group_property ( ag_data )
ag = CreateAgentWithAG ( self , "agentwithag" , agent_name , agent_data [ "foundation_model" ], agent_data [ "agent_instruction" ], agent_data [ "description" ], agent_action_group_properties , agent_resource_role . arn )
elif ag_data and kb_data :
agent_name = "spa_agent_with_ag_kb"
print ( "AG and KB data" )
agent_action_group_properties = agent_action_group_property ( ag_data )
agent_knowledge_base_property = create_kb_property ( kb_data )
ag = CreateAgentWithKA ( self , "agentwithbooth" , agent_name , agent_data [ "foundation_model" ], agent_data [ "agent_instruction" ], agent_data [ "description" ], agent_knowledge_base_property , agent_action_group_properties , agent_resource_role . arn )
else :
agent_name = "spa_agent"
print ( "No data" )
ag = CreateAgent ( self , "agent" , agent_name , agent_data [ "description" ], agent_resource_role . arn )Dalam posting blog ini, Anda belajar cara membuat agen percakapan Amazon Bedrock yang memungkinkan pengguna untuk berinteraksi dengan tabel Amazon DynamoDB menggunakan bahasa alami.
Kombinasi agen dari Bedrock, DynamoDB, dan Model Bahasa Hrough Foundation (FMS) membuka kemungkinan yang menarik untuk membangun aplikasi yang ramah pengguna. Pengguna dapat berinteraksi dengan database menggunakan bahasa sederhana, memudahkan pengguna non-teknis untuk mengakses dan memanipulasi data.
Saya mendorong Anda untuk mengeksplorasi lebih lanjut dan memperluas fungsionalitas agen percakapan Anda berdasarkan persyaratan spesifik Anda. Dengan desain dan implementasi yang tepat, Anda dapat membuat agen cerdas yang merevolusi cara pengguna berinteraksi dengan data.
Terima kasih telah bergabung dengan saya dalam perjalanan ini, dan saya harap posting ini telah menginspirasi Anda untuk membuat solusi inovatif Anda sendiri menggunakan agen untuk Amazon Bedrock.
Lihat berkontribusi untuk informasi lebih lanjut.
Perpustakaan ini dilisensikan di bawah lisensi MIT-0. Lihat file lisensi.