AWS Thai Blog
Amazon Bedrock Prompt Management พร้อมให้บริการแบบ GA แล้ว
Amazon Bedrock Prompt Management พร้อมให้บริการแล้วในรูปแบบ GA (General Availability) พร้อมฟีเจอร์ใหม่ที่เพิ่มตัวเลือกในการกำหนดค่าพรอมต์ และช่วยให้การเรียกใช้งานในแอปพลิเคชัน Generative AI ของคุณทำได้อย่างราบรื่นมากยิ่งขึ้น
บทความนี้แปลจาก Amazon Bedrock Prompt Management is now available in GA โดยคุณ Dani Mitchell และคุณ Ignacio Sánchez
Amazon Bedrock Prompt Management ช่วยให้การสร้าง ประเมินผล จัดการเวอร์ชัน และแชร์พรอมต์ทำได้ง่ายขึ้น เพื่อช่วยให้นักพัฒนาและวิศวกรพรอมต์ได้รับการตอบสนองที่ดีขึ้นจากโมเดลพื้นฐาน (Foundation Models หรือ FMs) สำหรับ Use case ใช้งานของพวกเขา ในบทความนี้ เราจะพาสำรวจความสามารถหลักของ Amazon Bedrock Prompt Management และแสดงตัวอย่างวิธีการใช้เครื่องมือเหล่านี้เพื่อช่วยปรับปรุงประสิทธิภาพของพรอมต์และผลลัพธ์ให้เหมาะกับ Use case เฉพาะของคุณ
ฟีเจอร์ใหม่บน Amazon Bedrock Prompt Management
Amazon Bedrock Prompt Management กับความสามารถใหม่ที่จะช่วยให้กระบวนการสร้างแอปพลิเคชัน Generative AI ง่ายขึ้น:
- พรอมต์แบบมีโครงสร้าง – กำหนดคำสั่งระบบ เครื่องมือ และข้อความเพิ่มเติมเมื่อสร้างพรอมต์
- การใช้งานร่วมกับ API Converse และ InvokeModel – เรียกใช้พรอมต์ที่คุณจัดหมวดหมู่ไว้โดยตรงจากการเรียก API Amazon Bedrock Converse และ InvokeModel
เพื่อให้เห็นภาพชัดขึ้น เรามาดูตัวอย่างการสร้างพรอมต์ที่ใช้สรุปเอกสารทางการเงินกัน
เริ่มต้นการสร้างพรอมต์
ขั้นตอนในการสร้างพรอมต์
- ไปที่ Amazon Bedrock console แล้วไปที่แถบ navigation โดยด้านล่างของ Builder tools ให้เลือก Prompt management
- เลือก Create prompt เพื่อสร้างพรอมต์ใหม่
- ตั้งชื่อ คำอธิบายของพรอมต์แล้วกด Create
เริ่มต้นสร้างพรอมต์
ใช้ Prompt builder เพื่อปรับแต่งพรอมต์:
-
- สำหรับ System instructions ให้กำหนดหน้าที่หลักของของโมเดล โดยในตัวอย่างเราจะกำหนดเป็นดังนี้
You are an expert financial analyst with years of experience in summarizing complex financial documents. Your task is to provide clear, concise, and accurate summaries of financial reports.
- ใส่พรอมต์ในกล่อง User message
คุณสามารถสร้างตัวแปรได้โดยการล้อมรอบชื่อด้วยเครื่องหมายปีกกาคู่สองชั้น เมื่อคุณเรียกใช้งาน คุณสามารถส่งค่าให้กับตัวแปรเหล่านี้ ซึ่งจะถูกแทรกเข้าไปในเทมเพลตของคำสั่งของคุณ สำหรับโพสต์นี้ เราจะใช้คำสั่งดังต่อไปนี้:
Summarize the following financial document for {{company_name}} with ticker symbol {{ticker_symbol}}:
Please provide a brief summary that includes
1. Overall financial performance
2. Key numbers (revenue, profit, etc.)
3. Important changes or trends
4. Main points from each section
5. Any future outlook mentioned
6. Current Stock price
Keep it concise and easy to understand. Use bullet points if needed.
Document content: {{document_content}}
- การกำหนดค่าเครื่องมือใน Tools setting สำหรับการเรียกใช้ฟังก์ชัน
คุณสามารถกำหนดเครื่องมือโดยระบุชื่อ คำอธิบาย และโครงสร้างข้อมูล Input เพื่อให้โมเดลสามารถโต้ตอบกับฟังก์ชันภายนอกและขยายขีดความสามารถได้ โดยให้ระบุข้อมูลเครื่องมือในรูปแบบ JSON schemaในการใช้งานการเรียกใช้ฟังก์ชัน โมเดล LLM ไม่ได้ใช้เครื่องมือโดยตรง แต่จะระบุเครื่องมือและพารามิเตอร์ที่จำเป็นในการใช้งาน ผู้ใช้จะต้องเขียนโค้ดเพื่อเรียกใช้เครื่องมือตามคำขอของโมเดล และส่งผลลัพธ์กลับไปยังโมเดล หากต้องการเรียนรู้เพิ่มเติม สามารถอ้างอิงได้จากหน้า “Use a tool to complete an Amazon Bedrock model response” เพื่อเรียนรู้เพิ่มเติม - เลือก Save เพื่อบันทึกการตั้งค่า
- สำหรับ System instructions ให้กำหนดหน้าที่หลักของของโมเดล โดยในตัวอย่างเราจะกำหนดเป็นดังนี้
เปรียบเทียบรูปแบบคำสั่งพรอมต์
คุณสามารถสร้างและเปรียบเทียบคำสั่งพรอมต์หลายรูปแบบเพื่อหาแบบที่ดีที่สุดสำหรับการใช้งานของคุณ กระบวนการนี้สามารถทำด้วยตนเองและปรับแต่งได้
วิธีการสร้าง:
- เลือก “Compare variants“
- คำสั่งพรอมต์ต้นฉบับจะถูกใส่ไว้แล้ว คุณสามารถเพิ่มรูปแบบใหม่ด้วยตนเองโดยระบุจำนวนที่ต้องการสร้าง
- สำหรับแต่ละรูปแบบใหม่ คุณสามารถปรับแต่ง User message, system instruction, การกำหนดค่าเครื่องมือ และข้อความเพิ่มเติมได้
- คุณสามารถสร้างรูปแบบต่าง ๆ สำหรับโมเดลที่แตกต่างกัน เลือก “Select model” เพื่อเลือกโมเดล FM เฉพาะสำหรับการทดสอบแต่ละรูปแบบ
- เลือก “Run all” เพื่อเปรียบเทียบผลลัพธ์จากทุกรูปแบบคำสั่งในโมเดลที่เลือก
- หากรูปแบบใดให้ผลลัพธ์ดีกว่าต้นฉบับ คุณสามารถเลือก “Replace original prompt” เพื่ออัปเดตคำสั่งพรอมต์ของคุณ
- ในหน้า “Prompt builder” เลือก “Create version” เพื่อบันทึกคำสั่งที่อัปเดตแล้ว
วิธีการนี้จะช่วยให้คุณปรับแต่งคำสั่งสำหรับโมเดลหรือการใช้งานเฉพาะได้อย่างละเอียดมากขึ้น และทำให้การทดสอบและปรับปรุงผลลัพธ์ของคุณเป็นเรื่องที่ง่ายขึ้น
เรียกใช้พรอมต์ (Invoke)
ตอนนี้คุณสามารถเรียกใช้พรอมต์จากแอปพลิเคชันของคุณได้แล้ว โดยการระบุตัวระบุพรอมต์ (prompt identifier) และเวอร์ชันเป็นส่วนหนึ่งของการเรียก API Amazon Bedrock Converse ตัวอย่างโค้ดด้านล่างนี้แสดงวิธีการใช้งานผ่าน AWS SDK สำหรับ Python (Boto3):
import boto3
# Set up the Bedrock client
bedrock = boto3.client('bedrock-runtime')
# Example API call
response = bedrock.converse(
modelId=<<insert prompt arn>>,
promptVariables = '{ "company_name": { "text" : "<<insert company name>>"},"ticker_symbol": {"text" : "<<insert ticker symbol>>"},"document_content": {"text" : "<<Insert document content>>"}}'
)
# Print the response
response_body = json.loads(bedrock_response.get('body').read())
print(response_body)
เราได้ส่งผ่าน Amazon Resource Name (ARN) ของพรอมต์ในพารามิเตอร์ ID ของโมเดล และตัวแปรพรอมต์เป็นพารามิเตอร์แยกต่างหาก ทำให้ Amazon Bedrock สามารถโหลดเวอร์ชันพรอมต์ของเราจากไลบรารีจัดการพรอมต์ (Prompt Library) ได้โดยตรง เพื่อเรียกใช้งานโดยไม่มี Latency overhead วิธีนี้จะช่วยลดความซับซ้อนของขั้นตอนการทำงาน โดยเปิดให้สามารถเรียกใช้พรอมต์โดยตรงผ่าน API ของ Converse หรือ InvokeModel ซึ่งช่วยลดการดึงข้อมูลและจัดรูปแบบด้วยตนเอง นอกจากนี้ยังช่วยให้ทีมสามารถนำพรอมต์กลับมาใช้ซ้ำและแบ่งปันกันได้ รวมถึงติดตามเวอร์ชันต่างๆ ได้อีกด้วย
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้ฟีเจอร์เหล่านี้ รวมถึงสิทธิ์ที่จำเป็น สามารถดูได้ที่เอกสารประกอบที่นี่
นอกจากนี้คุณยังสามารถเรียกใช้พรอมต์ด้วยวิธีอื่น ๆ ได้ดังนี้:
- ใช้ Amazon Bedrock prompt flow โดยรวมเวอร์ชันพรอมต์จาก Amazon Bedrock Prompt Management ผ่าน Prompt node ในโฟลว์ของคุณ
- ใช้ SDK ของ Amazon Bedrock และ Method
get_prompt
ซึ่งช่วยให้คุณสามารถผสานข้อมูลพรอมต์เข้ากับแอปพลิเคชันโค้ดของคุณ หรือหากต้องการ สามารถใช้เฟรมเวิร์กโอเพนซอร์สอย่าง LangChain หรือ LlamaIndex ได้ ดูรายละเอียดเพิ่มเติมได้ที่ “Integrate Amazon Bedrock Prompt Management in LangChain applications“
พร้อมใช้งานแล้ว!
Amazon Bedrock Prompt Management พร้อมให้บริการทั่วไปแล้วใน AWS Region ต่อไปนี้: US East (N. Virginia), US West (Oregon), Europe (Paris), Europe (Ireland), Europe (Frankfurt), Europe (London), South America (Sao Paulo), Asia Pacific (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney) และ Canada (Central) สำหรับข้อมูลราคา ดูได้ที่หน้าราคาของ Amazon Bedrock
บทสรุป
การเปิดให้บริการทั่วไปของ Amazon Bedrock Prompt Management นำเสนอความสามารถอันทรงพลังที่ช่วยยกระดับการพัฒนาแอปพลิเคชัน Generative AI ด้วยการให้แพลตฟอร์มศูนย์กลางสำหรับสร้าง ปรับแต่ง และจัดการพรอมต์ นักพัฒนาสามารถปรับปรุงขั้นตอนการทำงานและมุ่งสู่การพัฒนาประสิทธิภาพของพรอมต์ ความสามารถในการกำหนด System instructions, configure tools และเปรียบเทียบตัวเลือกพรอมต์ต่าง ๆ ช่วยให้ทีมสามารถสร้างพรอมต์ที่มีประสิทธิภาพซึ่งเหมาะกับกรณีการใช้งานเฉพาะของพวกเขา ด้วยการผสานรวมอย่างราบรื่นเข้ากับ Amazon Bedrock Converse API และการรองรับเฟรมเวิร์กยอดนิยม องค์กรต่างๆ สามารถสร้างและปรับใช้โซลูชัน AI ที่มีแนวโน้มในการสร้างผลลัพธ์ที่เกี่ยวข้องได้อย่างง่ายดายยิ่งขึ้น