Amazon Bedrock คืออะไร? แนะนำฟังก์ชันของ AWS สำหรับผู้เริ่มต้นใช้งาน
บทความนี้ได้รับการแปลมาจากบทความภาษาญี่ปุ่นที่มีชื่อว่า AWS入門ブログリレー2024〜Amazon Bedrock編〜 โดยเจ้าของบทความนี้คือคุณ tsukuboshi ซึ่งเป็นชาวญี่ปุ่น และในบทความนี้จะมีการปรับสำนวนการเขียน รวมถึงมีการเรียบเรียงเนื้อหาใหม่ให้เข้าใจง่ายและมีความเหมาะสมมากยิ่งขึ้น
ในบทความนี้เราจะนำเหล่าสมาชิกที่โดยปกติแล้วเขียนแต่บล็อกเกี่ยวกับเนื้อหาล่าสุดของ AWS แบบละเอียดลงลึก กลับมาเขียนบทความอธิบายเนื้อหาพื้นฐานต่าง ๆ แบบเบสิกกันอีกครั้งครับ
โดยบทความนี้ก็ตามชื่อ สำหรับผู้ที่ตั้งใจจะเรียนเกี่ยวกับ AWS รวมถึงผู้ที่ใช้งาน AWS อยู่แล้ว แต่อยากจะติดตามเนื้อหาหรืออัปเดตใหม่ ๆ ก็อยากจะให้อ่านบทความนี้ไปจนจบเลยครับ
ถ้าอย่างนั้นเราก็มาเริ่มกันเลยครับ โดยหัวข้อในครั้งนี้ คือ 「Amazon Bedrock」
ข้อมูลพื้นฐาน
ก่อนอื่นผมจะอธิบายข้อมูลพื้นฐานที่ควรรู้เกี่ยวกับ Amazon Bedrock ก่อนครับ
ภาพรวมของ service
Amazon Bedrock เป็น managed service ของ AWS ที่สามารถใช้งาน Foundation Model (FM) ของ Generative AI เจ้าหลัก ๆ ได้ครับ
ซึ่งการใช้งาน generative AI ผ่าน Foundation Model ของ Bedrock แทนการใช้งานตัว generative AI นั้นแบบตรง ๆ จะมีข้อดีก็คือ
- สามารถใช้งาน AI ของเจ้าดัง ๆ ไม่ว่าจะเป็น text generation, embedding, image generation, video generation, ฯลฯ โดยใช้แค่ API เดียว
- สามารถสร้าง generative AI application โดยที่ยังคงรักษา privacy และ security เอาไว้ได้
- มีฟังก์ชันต่าง ๆ ที่เกี่ยวกับ generative AI เช่น RAG, AI Agent, AI Workflow ให้ใช้
- ใช้งานร่วมกับ AWS Service อื่น ๆ ได้อย่างราบรื่น
วิธีเริ่มใช้งาน Bedrock
ในการใช้งาน Foundation Model ของ Bedrock เป็นครั้งแรก จะต้อง request ขอ access สำหรับเข้าใช้งาน Foundation Model ผ่านหน้า console ตามรูปด้านล่างนี้ก่อน
เมื่อได้ access สำหรับเข้าใช้งาน model แล้ว account นั้นก็จะสามารถใช้งาน Foundation Model นั้น ๆ ได้ตามต้องการ
ข้อควรระวังคือ โดยทั่วไปแล้วเวลามี Foundation Model ใหม่ออกมา region Virginia (us-east-1) และ Oregon (us-west-2) มักจะได้ใช้ก่อนใครเพื่อน ในขณะที่ region อื่น ๆ รวมไปถึง Singapore (ap-southeast-1) มีแนวโน้มที่จะได้ใช้งาน model ใหม่ช้ากว่าครับ
เพราะฉะนั้น Foundation Model และฟีเจอร์บางอย่างของ Bedrock จึงอาจจะไม่สามารถใช้งานได้ใน Thailand region
แต่ถึงแม้จะใช้ Bedrock ใน region Virginia และ Oregon การตอบสนองก็ยังค่อนข้างเร็ว และเนื่องจากการสื่อสารเกิดขึ้นภายใน AWS จึงสามารถรับประกันความปลอดภัยได้ด้วย
ตอนสร้าง generative AI application บน AWS ก็เลยมักจะเห็น pattern แบบที่ใช้ resource อื่น ๆ ใน region ของประเทศตัวเอง แต่ใช้ Bedrock ใน region Virginia หรือ Oregon แทน
ในบทความนี้ก็จะอธิบายโดยใช้ Bedrock ใน region Virginia และ Oregon เป็นหลักครับ
วิธีใช้งาน Bedrock
ในส่วนนี้ผมจะอธิบายวิธีการใช้ Foundation Model ใน Bedrock ทั้ง 2 รูปแบบ คือผ่าน GUI และ API ครับ
การใช้งานผ่าน GUI
เราสามารถใช้ playground บนหน้า management console ของ Amazon Bedrock เพื่อเลือกและเรียกใช้ Foundation Model ต่าง ๆ ได้แบบง่าย ๆ ตามภาพด้านล่าง
ซึ่งวิธีนี้มีประโยชน์ในตอนที่ต้องการตรวจสอบว่าแต่ละ Foundation Model ให้ผลลัพธ์แบบไหนออกมา
การใช้งานผ่าน API
ก่อนจะเริ่มเราสามารถใช้ API ListFoundationModels
ของ Amazon Bedrock เพื่อดูรายชื่อ Foundation Model ทั้งหมดที่สามารถใช้งานได้ใน region นั้น ๆ
ตัวอย่างคำสั่งในการเรียกใช้ ListFoundationModels
โดยใช้ AWS CLI จะเป็นตามด้านล่างนี้:
aws bedrock list-foundation-models --region us-east-1
เราจำเป็นจะต้องใช้ modelId ที่ได้มาจากการรันคำสั่งด้านบนเวลาที่จะเรียกใช้ Foundation Model
จากนั้นเราสามารถใช้ API 4 อย่างต่อไปนี้ที่เป็น Runtime API ของ Amazon Bedrock เพื่อเรียกใช้ Foundation Model ของ Amazon Bedrock จากโปรแกรมของแอปพลิเคชันได้:
- InvokeModel: ส่ง request ตามที่แต่ละ Foundation Model ต้องการ และรับ response ทั้งหมดในครั้งเดียว
- InvokeModelWithResponseStream: ส่ง request ตามที่แต่ละ Foundation Model ต้องการ และค่อย ๆ รับ response เป็นตัวอักษรจำนวนน้อย ๆ ในรูปแบบของ stream
- Converse: ส่ง request แบบเดียวกันที่ใช้ได้กับทุก Foundation Model และรับ response ทั้งหมดในครั้งเดียว
- ConverseStream: ส่ง request แบบเดียวกันที่ใช้ได้กับทุก Foundation Model และค่อย ๆ รับ response เป็นตัวอักษรจำนวนน้อย ๆ ในรูปแบบของ stream
โดยทั่วไปแล้วเราจะแบ่งกลุ่ม API ออกเป็น 2 กลุ่มแบบหยาบ ๆ คือ InvokeModel API และ Converse API ซึ่งในปี 2025 นี้ Converse API มีความสามารถในการใช้งานที่หลากหลายมากกว่า เพราะเราสามารถเรียกใช้ Foundation Model ที่แตกต่างกันด้วย request เดียวกันได้
แต่ไม่ว่าจะใช้ API กลุ่มไหนก็จำเป็นจะต้องมี permission bedrock:InvokeModel
เพื่อเรียกใช้ API ครับ
ตัวอย่างคำสั่งในการเรียกใช้ Converse API ผ่าน AWS CLI จะเป็นประมาณนี้
aws bedrock-runtime converse
--model-id "anthropic.claude-3-sonnet-20240229-v1:0"
--messages '[{"role": "user", "content": [{"text": "ขอคำคมจากบุคคลสำคัญหนึ่งคำคม"}]}]'
--inference-config '{"maxTokens": 512, "temperature": 0.5, "topP": 0.9}'
--region us-east-1
ส่วนอันนี้เป็นตัวอย่าง code ในการเรียกใช้ Converse API ด้วย Boto3 (Python)
import boto3
modelRegion = "us-east-1"
modelId = "anthropic.claude-3-sonnet-20240229-v1:0"
br = boto3.client(service_name="bedrock-runtime", region_name=modelRegion)
prompt = "ขอคำคมจากบุคคลสำคัญหนึ่งคำคม"
messages = [
{
"role": "user",
"content": [{"text": prompt}],
}
]
inferenceConfig = {
"maxTokens": 512,
"temperature": 1,
"topP": 0.9,
}
response = br.converse(
modelId=modelId ,
messages=messages,
inferenceConfig=inferenceConfig
)
response_output=response["output"]["message"]["content"][0]["text"]
print(response_output)
คำศัพท์เฉพาะ
การใช้งาน Amazon Bedrock จะเจอกับคำศัพท์เฉพาะเกี่ยวกับ generative AI โผล่มาเยอะพอสมควร ซึ่งเอกสารด้านล่างนี้มีอธิบายเกี่ยวกับศัพท์เฉพาะเหล่านี้เอาไว้อยู่ ถ้าลองอ่านผ่าน ๆ ดูก็น่าจะทำให้สามารถเข้าใจ Bedrock ได้มากขึ้นครับ
การเลือก Foundation Model
Amazon Bedrock มี Foundation Model หลากหลายรูปแบบให้เลือกใช้
ต่อจากนี้ผมจะอธิบายเกี่ยวกับประเด็นที่ควรพิจารณาเวลาเลือกใช้ Foundation Model ครับ
Modality
Foundation Model ใน Bedrock ถูกแบ่งประเภทตาม modality ด้านล่างนี้
การเลือก modality ที่เหมาะสมกับการใช้งานจะช่วยให้เราสามารถเลือกใช้ model ที่เหมาะสมที่สุดได้
- Text (model สร้างข้อความ): model ที่ตีความข้อความที่ป้อนเข้าไปและสร้างผลลัพธ์ออกมาเป็นข้อความ
- Vision (model สร้างข้อความ): model ที่ตีความรูปภาพที่ป้อนเข้าไปและสร้างผลลัพธ์ออกมาเป็นข้อความ
- Embedding (model ฝังตัว): model ที่ตีความข้อมูลที่ป้อนเข้าไปและสร้างผลลัพธ์ออกมาเป็น embedding vector
- Image (model สร้างรูปภาพ): model ที่ตีความข้อมูลที่ป้อนเข้าไปและสร้างผลลัพธ์ออกมาเป็นรูปภาพ
- Video (model สร้างวิดีโอ): model ที่ตีความข้อมูลที่ป้อนเข้าไปและสร้างผลลัพธ์ออกมาเป็นวิดีโอ
การ Deploy
Foundation Model ใน Bedrock มีวิธีการ deploy หลากหลายรูปแบบ ซึ่งผมแนะนำให้เริ่มต้นด้วย model แบบ serverless ที่ไม่ต้อง deploy ก่อน แต่หากพบว่า model แบบ serverless ไม่เพียงพอต่อการใช้งานก็สามารถพิจารณาวิธีการ deploy แบบอื่นได้
ต่อไปนี้ผมจะขอแนะนำวิธีการ deploy แต่ละแบบอย่างคร่าว ๆ
Serverless
Foundation Model ที่ถูกรวมอยู่ใน Amazon Bedrock ตั้งแต่แรกอยู่แล้วนั้นสามารถใช้งานแบบ serverless ได้เลยโดยไม่ต้องทำการ deploy เพิ่มเติม
เราแค่เลือกและเปิดใช้งานการเข้าถึง model ของ Bedrock ตามขั้นตอนด้านล่าง ก็จะสามารถใช้งาน model นั้นได้ทันทีในรูปแบบของ Bedrock Foundation Model
Marketplace Deployment
เป็นฟีเจอร์ที่ช่วยให้เราสามารถเลือก model ของ third party ที่ไม่ได้ถูกรวมอยู่ใน Amazon Bedrock จาก Amazon Bedrock Marketplace และ deploy เป็น Foundation Model ของ Bedrock
แต่วิธีนี้จำเป็นต้องมีการ deploy model แยกต่างหากโดยระบุการตั้งค่า instance ซึ่งจะ deploy ผ่าน SageMaker endpoint ครับ
เนื่องจากว่า Foundation Model ที่สามารถใช้งานได้ใน Marketplace deployment มีอยู่เยอะมาก บทความนี้เลยขออนุญาตข้ามการแนะนำ Foundation Model ประเภทนี้ไปครับ
Custom Model
ฟีเจอร์ที่ช่วยให้เราสามารถนำตัว Foundation Model แบบ serverless ของ Bedrock มาปรับแต่งโดยใช้ training data แล้วเอา model นั้นมา deploy เป็น Foundation Model ของ Bedrock ได้
ซึ่งเราสามารถสร้าง model ที่เหมาะกับ use case ต่าง ๆ ได้โดยการปรับแต่ง Foundation Model ด้วยวิธีการต่อไปนี้
- Fine-tuning
- Continuous pre-training
- Model distillation
สำหรับ fine-tuning และ continuous pre-training ใน Bedrock สามารถดูรายละเอียดเพิ่มเติมได้จากบทความด้านล่าง
ส่วนสำหรับ model distillation ใน Bedrock สามารถดูรายละเอียดเพิ่มเติมได้จากบทความด้านล่าง
Custom Model Import
ฟีเจอร์ที่ช่วยให้เราสามารถ import custom model ที่ได้รับการ train จากแพลตฟอร์มอื่นมาแล้วเข้ามายัง Bedrock และ deploy เป็น Foundation Model ของ Bedrock ได้
โดย Bedrock รองรับการใช้ model ที่ได้รับการ train บนแพลตฟอร์มต่าง ๆ เช่น SageMaker หรือ Hugging Face เป็นต้น
โครงสร้างราคา
Bedrock มีโครงสร้างราคาหลากหลายรูปแบบ และเราสามารถเลือกโครงสร้างราคาตามการใช้งานได้
สามารถดูรายละเอียดได้จากตารางราคาในเว็บไซต์ด้านล่าง
โดยในบทความนี้ผมจะแนะนำโครงสร้างราคาหลัก ๆ 2 รูปแบบ
On-demand
โครงสร้างราคามาตรฐานที่คิดค่าบริการตามการใช้งานจริง
การคิดค่าบริการแบบนี้จะแตกต่างกันไปตามประเภทของ model ที่ใช้
- Model สร้างข้อความ: คิดค่าบริการตามจำนวนการประมวลผล input token และจำนวน output token ที่สร้าง
- Embedding model: คิดค่าบริการตามจำนวนการประมวลผล input token
- Model สร้างรูปภาพ: คิดค่าบริการตามจำนวนรูปภาพที่สร้าง
- Model สร้างวิดีโอ: คิดค่าบริการตามการจำนวนวิดีโอที่สร้าง
Provisioned Throughput
โครงสร้างราคาที่คิดเงินโดยใช้หน่วยที่เรียกว่า model unit สำหรับ base model หรือ custom model หนึ่ง ๆ โดยเฉพาะ
Model unit หมายถึง throughput เฉพาะที่วัดจากจำนวนสูงสุดของ input token หรือ output token ที่ประมวลผลได้ต่อนาที หรือถ้าพูดแบบง่าย ๆ หน่อยก็คือ จำนวน input/output token ที่ประมวลผลได้ต่อนาที
โครงสร้างราคาประเภทนี้จะต้องเลือกระยะเวลาสัญญาแบบ 1 เดือนหรือ 6 เดือน และชำระค่าบริการตามนั้นครับ
Model สร้างข้อความ
การใช้ model สร้างข้อความ ช่วยให้เราสามารถสร้างข้อความจากข้อความหรือรูปภาพที่เราป้อนเข้าไปได้
Model สร้างข้อความที่สามารถใช้งานได้ใน Amazon Bedrock มีตามตารางด้านล่างนี้
สำหรับราคา จะอ้างอิงจากโครงสร้างราคาแบบ on-demand ในภูมิภาค Virginia หรือ Oregon ครับ
Foundation Model | ผู้ให้บริการ | Modality | จำนวน token สูงสุด | ภาษาที่รองรับ | ราคาต่อ 1,000 input token | ราคาต่อ 1,000 output token |
---|---|---|---|---|---|---|
Claude 3.7 Sonnet | Anthropic | Text & Vision | 200k | ภาษาอังกฤษ สเปน ญี่ปุ่น และภาษาอื่นๆ อีกหลายภาษา | 0.003000 USD | 0.015000 USD |
Claude 3.5 Sonnet | Anthropic | Text & Vision | 200k | ภาษาอังกฤษ สเปน ญี่ปุ่น และภาษาอื่นๆ อีกหลายภาษา | 0.003000 USD | 0.015000 USD |
Claude 3.5 Haiku | Anthropic | Text & Vision | 200k | ภาษาอังกฤษ สเปน ญี่ปุ่น และภาษาอื่นๆ อีกหลายภาษา | 0.000800 USD | 0.004000 USD |
Claude 3 Opus | Anthropic | Text & Vision | 200k | ภาษาอังกฤษ สเปน ญี่ปุ่น และภาษาอื่นๆ อีกหลายภาษา | 0.015000 USD | 0.075000 USD |
Claude 3 Haiku | Anthropic | Text & Vision | 200k | ภาษาอังกฤษ สเปน ญี่ปุ่น และภาษาอื่นๆ อีกหลายภาษา | 0.000250 USD | 0.001250 USD |
Claude 3 Sonnet | Anthropic | Text & Vision | 200k | ภาษาอังกฤษ สเปน ญี่ปุ่น และภาษาอื่นๆ อีกหลายภาษา | 0.003000 USD | 0.015000 USD |
Claude v2.1/2.0 | Anthropic | Text | 200k | ภาษาอังกฤษและภาษาอื่นๆ อีกหลายภาษา | 0.008000 USD | 0.024000 USD |
Claude Instant | Anthropic | Text | 100k | ภาษาอังกฤษและภาษาอื่นๆ อีกหลายภาษา | 0.000800 USD | 0.002400 USD |
Command | Cohere | Text | 4k | ภาษาอังกฤษ | 0.001500 USD | 0.002000 USD |
Command Light | Cohere | Text | 4k | ภาษาอังกฤษ | 0.000300 USD | 0.000600 USD |
Command R | Cohere | Text | 128k | ※1 | 0.000500 USD | 0.001500 USD |
Command R+ | Cohere | Text | 128k | ※1 | 0.003000 USD | 0.015000 USD |
Jamba 1.5 Large | AI21 Labs | Text | 256k | ※2 | 0.002000 USD | 0.008000 USD |
Jamba 1.5 Mini | AI21 Labs | Text | 256k | ※2 | 0.000200 USD | 0.000400 USD |
Jamba-Instruct | AI21 Labs | Text | 8k | ภาษาอังกฤษ | 0.000500 USD | 0.000700 USD |
Llama 3.3 Instruct (70B) | Meta | Text | 128k | ภาษาอังกฤษ | 0.000720 USD | 0.000720 USD |
Llama 3.2 Instruct (1B) | Meta | Text | 131k | ภาษาอังกฤษ | 0.000100 USD | 0.000100 USD |
Llama 3.2 Instruct (3B) | Meta | Text | 131k | ภาษาอังกฤษ | 0.000150 USD | 0.000150 USD |
Llama 3.2 Instruct (11B) | Meta | Text | 131k | ภาษาอังกฤษ | 0.000160 USD | 0.000160 USD |
Llama 3.2 Instruct (90B) | Meta | Text | 131k | ภาษาอังกฤษ | 0.000720 USD | 0.000720 USD |
Llama 3.1 Instruct (8B) | Meta | Text | 128k | ภาษาอังกฤษ | 0.000220 USD | 0.000220 USD |
Llama 3.1 Instruct (70B) | Meta | Text | 128k | ภาษาอังกฤษ | 0.000720 USD | 0.000720 USD |
Llama 3.1 Instruct (405B) | Meta | Text | 128k | ภาษาอังกฤษ | 0.002400 USD | 0.002400 USD |
Llama 3 Instruct (8B) | Meta | Text | 8k | ภาษาอังกฤษ | 0.000300 USD | 0.000600 USD |
Llama 3 Instruct(70B) | Meta | Text | 8k | ภาษาอังกฤษ | 0.002650 USD | 0.003500 USD |
Mistral 7B Instruct | Mistral AI | Text | 32k | ภาษาอังกฤษ | 0.000150 USD | 0.000200 USD |
Mixtral 8x7B Instruct | Mistral AI | Text | 32k | ※3 | 0.000450 USD | 0.000700 USD |
Mistral Small (24.02) | Mistral AI | Text | 32k | ※3 | 0.001000 USD | 0.003000 USD |
Mistral Large (24.02) | Mistral AI | Text | 32k | ※3 | 0.004000 USD | 0.012000 USD |
Mistral Large 2 (24.07) | Mistral AI | Text | 128k | ※4 | 0.002000 USD | 0.006000 USD |
Titan Text Premier | Amazon | Text | 32k | ภาษาอังกฤษ | 0.000500 USD | 0.001500 USD |
Titan Text Lite | Amazon | Text | 4k | ภาษาอังกฤษ | 0.000150 USD | 0.000200 USD |
Titan Text Express | Amazon | Text | 8k | ※5 | 0.000200 USD | 0.000600 USD |
Nova Micro | Amazon | Text | 128k | ※6 | 0.000035 USD | 0.000140 USD |
Nova Lite | Amazon | Text & Vision | 300k | ※6 | 0.000060 USD | 0.000240 USD |
Nova Pro | Amazon | Text & Vision | 300k | ※6 | 0.000800 USD | 0.003200 USD |
※1 ภาษาอังกฤษ ฝรั่งเศส สเปน อิตาลี เยอรมัน โปรตุเกส ญี่ปุ่น เกาหลี อาหรับ จีน
※2 ภาษาอังกฤษ สเปน ฝรั่งเศส โปรตุเกส อิตาลี ดัตช์ เยอรมัน อาหรับ ฮีบรู
※3 ภาษาอังกฤษ ฝรั่งเศส อิตาลี เยอรมัน สเปน
※4 ภาษาอังกฤษ ฝรั่งเศส เยอรมัน สเปน อิตาลี จีน ญี่ปุ่น เกาหลี โปรตุเกส ดัตช์ โปแลนด์ อาหรับ ฮินดี และภาษาอื่นๆ อีกหลายสิบภาษา
※5 ภาษาอังกฤษ (GA), รองรับหลายภาษามากกว่า 100 ภาษา (พรีวิว)
※6 รองรับมากกว่า 200 ภาษารวมถึงภาษาอังกฤษ เยอรมัน สเปน ฝรั่งเศส อิตาลี ญี่ปุ่น เกาหลี อาหรับ จีน รัสเซีย ฮินดี โปรตุเกส ดัตช์ ตุรกี และฮีบรู
ใน model สร้างข้อความ เราสามารถใช้ model จาก Anthropic, Cohere, AI21 Labs, Meta, Mistral AI และ Amazon ได้
โดยหลังจากนี้ผมจะแนะนำ model สร้างข้อความแต่ละตัวโดยแบบคร่าว ๆ ครับ
Claude
Claude series เป็น model สร้างข้อความที่พัฒนาโดย Anthropic
Claude 3 มี modality ทั้งประเภท Text และ Vision ทำให้สามารถรับ input เป็นรูปภาพและสร้างคำตอบจากรูปภาพที่ได้รับได้
นอกจากนี้ Claude 3 มี model ให้เลือก 3 รุ่น ได้แก่ Haiku/Sonnet/Opus ซึ่งราคาและประสิทธิภาพก็จะแตกต่างกันไป
ในทางตรงกันข้าม Opus มีผลการทดสอบระดับสูงสุดที่เหนือกว่า GPT-4 (ตามการทดสอบของ Anthropic) จึงเป็นตัวเลือกที่ดีในกรณีที่ต้องการ model ที่มีประสิทธิภาพสูง
แล้วก็มี model รุ่นล่าสุดคือ Claude 3.7 Sonnet ที่มีฟังก์ชัน extended thinking แต่ราคาถูกกว่า Opus 5 เท่า จึงเป็นตัวเลือกที่ดีในกรณีที่ต้องการประสิทธิภาพสูงแต่ประหยัดต้นทุน
Command
Command series เป็น model สร้างข้อความที่พัฒนาโดย Cohere
โดยเฉพาะ Command R และ Command R+ ที่ระบุชัดเจนว่ารองรับภาษาญี่ปุ่น และเป็น model ประสิทธิภาพสูงที่ได้รับความสนใจมากพอสมควร
Jamba
Jamba series เป็น model สร้างข้อความที่พัฒนาโดย AI21 Labs
โดยเฉพาะ Jamba 1.5 model ที่มีความยาว context (context length) สูงสุดถึง 256k token จึงเหมาะสำหรับการสรุปและวิเคราะห์เอกสารที่มีความยาวมาก ๆ ครับ
สำหรับ Jamba 1.5 ใน Bedrock สามารถดูรายละเอียดเพิ่มเติมได้จากเอกสารด้านล่าง
Mistral
Mistral series เป็น model สร้างข้อความที่พัฒนาโดย Mistral AI
สำหรับ Mistral Large 2 ใน Bedrock สามารถดูรายละเอียดเพิ่มเติมได้จากเอกสารด้านล่าง
Llama
Llama series เป็น model สร้างข้อความที่พัฒนาโดย Meta
โดยเฉพาะ Llama 3.3 Instruct (70B) ที่เป็น model ขนาดเบาและมีราคาค่อนข้างถูก จึงได้รับความสนใจ
สำหรับ Llama 3.3 Instruct (70B) ใน Bedrock สามารถดูรายละเอียดเพิ่มเติมได้จากเอกสารด้านล่าง
Titan Text
Titan Text series เป็น model สร้างข้อความที่พัฒนาโดย Amazon
โดยเฉพาะ Express ซึ่งในเดือนเมษายน 2024 อยู่ในเวอร์ชันพรีวิว แต่รองรับหลายภาษามากกว่า 100 ภาษา และคาดว่าในอนาคตจะสามารถใช้งานภาษาไทยได้
Nova Pro/Lite/Micro
Nova series เป็น Foundation Model แบบ multimodal ที่พัฒนาโดย Amazon
โดยทั้ง Pro/Lite/Micro สามารถใช้เป็น model สร้างข้อความได้
ทุก model รองรับการใช้งานมากกว่า 200 ภาษารวมถึงภาษาไทยด้วย หากต้องการใช้ model สร้างข้อความของ Amazon แท้ ๆ บน service ของ Amazon (Bedrock) Nova ก็ถือเป็นตัวเลือกที่ดีเลยครับ
Nova Micro เป็น model ที่มีราคาถูกที่สุดในปี 2025 จึงเป็นตัวเลือกที่ดีในกรณีที่ต้องการประหยัดต้นทุน
ในขณะที่ Nova Lite และ Pro มี modality ทั้ง Text และ Vision ทำให้สามารถรับ input เป็นรูปภาพและสร้างคำตอบจากรูปภาพที่ได้รับได้
นอกจากนี้ Nova Lite และ Pro ยังมีความยาว context (context length) สูงสุดอยู่ที่ 300k token จึงสามารถรองรับเอกสารที่มีความยาวได้
Rerank
ถึงแม้จะไม่นับว่าเป็น series แต่ไหน ๆ แล้วก็ขอแนะนำ Rerank model ไว้ในบทความนี้ด้วยครับ
การใช้ Rerank 1.0 ที่พัฒนาโดย Amazon หรือ Rerank 3.5 ที่พัฒนาโดย Cohere จะช่วยให้เราสามารถจัดลำดับความสำคัญของข้อมูลที่ได้จาก semantic search ให้เหมาะสมกับบริบทและจุดประสงค์ของผู้ใช้งานได้
การใช้ model นี้จะช่วยเพิ่มความแม่นยำของ RAG และลดต้นทุนที่เกิดจากการถาม-ตอบซ้ำ ๆ ลงได้
Embedding Model
การใช้ Embedding Model ช่วยให้เราสามารถแปลง input ที่เป็นข้อความหรือรูปภาพไปเป็น vector ซึ่ง vector นี้สามารถนำไปใช้ประเมินความคล้ายคลึงระหว่างข้อความ หรือใช้ค้นหาข้อมูลที่มีความเกี่ยวข้องกันได้
Embedding Model ที่สามารถใช้งานได้ใน Amazon Bedrock มีตามตารางด้านล่างนี้
สำหรับราคา จะอ้างอิงจากโครงสร้างราคาแบบ on-demand ในภูมิภาค Virginia หรือ Oregon ครับ
Foundation Model | ผู้ให้บริการ | Modality | จำนวน token สูงสุด | ภาษา | ราคาต่อ 1,000 input token | ราคาต่อรูปภาพ 1 รูป |
---|---|---|---|---|---|---|
Embed English | Cohere | Embedding | 5k | ภาษาอังกฤษ | 0.00010 USD | ไม่มี |
Embed Multilingual | Cohere | Embedding | 5k | 108 ภาษา | 0.00010 USD | ไม่มี |
Titan Embeddings | Amazon | Embedding | 8k | ※7 | 0.00010 USD | ไม่มี |
Titan Text Embeddings V2 | Amazon | Embedding | 8k | ภาษาอังกฤษ | 0.00002 USD | ไม่มี |
Titan Multimodal Embeddings G1 | Amazon | Embedding | 128k | ภาษาอังกฤษ | 0.00080 USD | 0.00006 USD |
※7 ภาษาอังกฤษ อาหรับ จีน (ตัวย่อ) ฝรั่งเศส เยอรมัน ฮินดี ญี่ปุ่น สเปน เช็ก ฟิลิปปินส์ ฮีบรู อิตาลี เกาหลี โปรตุเกส รัสเซีย สวีเดน ตุรกี จีน (ตัวเต็ม) ดัตช์ กันนาดา มาลายาลัม มาราฐี โปแลนด์ ทมิฬ เตลูกู และอื่นๆ
ใน Embedding Model เราสามารถใช้ model ทั้งจาก Cohere และ Amazon ได้
โดยหลังจากนี้ผมจะแนะนำ Embedding Model แต่ละตัวโดยแบบคร่าว ๆ ครับ
Embed
Embed series เป็น Embedding Model ที่พัฒนาโดย Cohere
มีประสิทธิภาพที่ดีเยี่ยมในด้านการสร้าง embedding จึงเป็นตัวเลือกแรก ๆ ที่ควรพิจารณาหากต้องการสร้าง embedding vector ใน Bedrock
โดยเฉพาะ Embed Multilingual ที่รองรับภาษาไทย ทำให้สามารถแปลงข้อความภาษาไทยเป็น embedding vector ได้
Titan Embeddings
Titan Embeddings series เป็น Embedding Model ที่พัฒนาโดย Amazon
Titan Embeddings รองรับภาษาไทย และหากเป็นรุ่น V2 จะมีราคาถูกลงไปอีก จึงเป็นตัวเลือกที่ดีในกรณีที่ต้องการใช้ Embedding Model ที่มีราคาประหยัดครับ
นอกจากนี้ Titan Multimodal Embeddings ยังสามารถสร้าง embedding vector จากการผสมข้อมูลระหว่างข้อความและรูปภาพได้อีกด้วย
Model สร้างรูปภาพ
การใช้ model สร้างรูปภาพช่วยให้เราสามารถสร้างรูปภาพจากข้อความที่ป้อนเข้าไปได้
Model สร้างรูปภาพที่สามารถใช้งานได้ใน Amazon Bedrock มีตามตารางด้านล่างนี้
สำหรับราคา จะอ้างอิงจากโครงสร้างราคาแบบ on-demand ในภูมิภาค Virginia หรือ Oregon ครับ
Foundation Model | ผู้ให้บริการ | Modality | จำนวน token สูงสุด | ภาษา | ความละเอียดรูปภาพ | ราคาต่อรูปภาพ 1 รูป | ราคาต่อรูปภาพคุณภาพมาตรฐาน 1 รูป | ราคาต่อรูปภาพคุณภาพสูง 1 รูป |
---|---|---|---|---|---|---|---|---|
Stable Diffusion 3.5 Large | Stability AI | Image | 77 | ภาษาอังกฤษ | - | 0.080 USD | - | - |
Stable Image Core | Stability AI | Image | 77 | ภาษาอังกฤษ | - | 0.040 USD | - | - |
Stable Diffusion 3 Large | Stability AI | Image | 77 | ภาษาอังกฤษ | - | 0.080 USD | - | - |
Stable Image Ultra | Stability AI | Image | 77 | ภาษาอังกฤษ | - | 0.140 USD | - | - |
Titan Image Generator | Amazon | Image | 512 | ภาษาอังกฤษ | 512 x 512 | - | 0.008 USD | 0.010 USD |
Titan Image Generator | Amazon | Image | 512 | ภาษาอังกฤษ | 1024 x 1024 | - | 0.010 USD | 0.012 USD |
Nova Canvas | Amazon | Image | 1024 | ภาษาอังกฤษ | 1024 x 1024 | - | 0.040 USD | 0.060 USD |
Nova Canvas | Amazon | Image | 1024 | ภาษาอังกฤษ | 2048 x 2048 | - | 0.060 USD | 0.080 USD |
ใน model สร้างรูปภาพ เราสามารถใช้ model ทั้งจาก Cohere และ Amazon ได้
โดยหลังจากนี้ผมจะแนะนำ model สร้างรูปภาพแต่ละตัวโดยแบบคร่าว ๆ ครับ
Stable Diffusion
Stable Diffusion series เป็น model สร้างรูปภาพที่พัฒนาโดย Stability AI
Stable Image Core เป็น model ราคาถูกและรวดเร็ว, Stable Diffusion Large 3 เป็น model ที่มีความสมดุลทั้งด้านราคาและความเร็ว, และ Stable Image Ultra เป็น model คุณภาพสูง โดยเราสามารถเลือกใช้ได้ตามต้องการ
ซึ่งเพราะ Stable ช่วยให้เราสามารถสร้างรูปภาพได้ตามความต้องการ จึงเป็นตัวเลือกแรก ๆ ที่ควรพิจารณาหากต้องการสร้างรูปภาพใน Bedrock ครับ
สำหรับ Stable Diffusion 3 ใน Bedrock สามารถดูรายละเอียดเพิ่มเติมได้จากเอกสารด้านล่างนี้
นอกจากนี้เมื่อปี 2024 ที่ผ่านมาก็มี model ใหม่อย่าง Stable Diffusion 3.5 Large ออกมาด้วยครับ
Titan Image Generator
Titan Image Generator series เป็น model สร้างรูปภาพที่พัฒนาโดย Amazon
เป็น model สร้างรูปภาพที่มีราคาถูกมาก จึงเป็นตัวเลือกที่ดีในกรณีที่ต้องการประหยัดต้นทุนครับ
Nova Canvas
Nova series เป็น Foundation Model แบบ multimodal ที่พัฒนาโดย Amazon
โดย Canvas สามารถใช้เป็น model สร้างรูปภาพได้ และมีความสามารถพิเศษคือนอกจากสร้างรูปภาพแล้ว ยังสามารถปรับแต่งรูปภาพที่สร้างขึ้นได้อย่างละเอียดด้วย
Model สร้างวิดีโอ
การใช้ model สร้างวิดีโอช่วยให้เราสามารถสร้างวิดีโอจากข้อความที่ป้อนเข้าไปได้
Model สร้างวิดีโอที่สามารถใช้งานได้ใน Amazon Bedrock มีตามตารางด้านล่างนี้
สำหรับราคา จะอ้างอิงจากโครงสร้างราคาแบบ on-demand ในภูมิภาค Virginia หรือ Oregon ครับ
Foundation Model | ผู้ให้บริการ | Modality | จำนวน token สูงสุด | ภาษา | ความละเอียดวิดีโอ | ราคาต่อการสร้างวิดีโอ 1 วินาที |
---|---|---|---|---|---|---|
Nova Reel | Amazon | Video | 512 | ภาษาอังกฤษ | 720p, 24 fps | 0.08 USD |
Luma Ray2 | Luma AI | Video | 300 | ภาษาอังกฤษ | 720p, 24 fps | 1.50 USD |
Luma Ray2 | Luma AI | Video | 300 | ภาษาอังกฤษ | 540p, 24 fps | 0.75 USD |
Nova Reel
Nova series เป็น Foundation Model แบบ multimodal ที่พัฒนาโดย Amazon
โดย Reel สามารถใช้เป็น model สร้างวิดีโอได้
การใช้ Reel ช่วยให้เราสามารถสร้างวิดีโอคุณภาพสูงได้ จึงเป็นตัวเลือกที่ดีหากต้องการสร้างวิดีโอใน Bedrock ครับ
ฟีเจอร์ Safeguards
ในหัวข้อนี้ก็จะมาแนะนำฟีเจอร์ Safeguards ที่ช่วยให้เราสามารถใช้ Foundation Model ของ Amazon Bedrock ได้อย่างปลอดภัยยิ่งขึ้นครับ
Guardrail
Guardrail เป็นฟีเจอร์ที่ช่วยให้เราสามารถใช้มาตรการป้องกันที่ปรับแต่งมาโดยเฉพาะสำหรับแต่ละ use case ได้ ซึ่งเป็นไปตามนโยบาย Responsible AI
ฟีเจอร์นี้ช่วยให้เราสามารถใช้ AI ได้อย่างปลอดภัยโดยการกรองเนื้อหา หัวข้อ คำศัพท์ และข้อมูลที่เป็นความลับบางส่วนหรือทั้งหมดออก
การตรวจจับลายน้ำ (Watermark Detection)
ลายน้ำ คือ ลวดลายหรือตัวอักษรขนาดเล็กที่ใส่ลงในรูปภาพเพื่อแสดงลิขสิทธิ์ครับ
การใช้ฟีเจอร์นี้จะช่วยให้เราสามารถตรวจพบลายน้ำที่ถูกใส่ไว้ในรูปภาพ และตรวจสอบว่าเนื้อหาถูกเปลี่ยนแปลงโดยไม่ได้รับอนุญาตหรือไม่
ฟีเจอร์ Orchestration
ฟีเจอร์ Orchestration เป็นฟีเจอร์ที่ช่วยให้เราสามารถใช้ Foundation Model ของ Amazon Bedrock ได้สะดวกยิ่งขึ้นครับ
Knowledge Base
Knowledge Base เป็นฟีเจอร์ที่ช่วยให้เราสามารถสร้าง AWS-managed RAG (Retrieval-Augmented Generation) ได้โดยใช้ Foundation Model ของ Bedrock และ service อื่นที่เกี่ยวข้อง
ระบบจะสร้าง embedding จากเอกสารที่มีอยู่ในแหล่งข้อมูลโดยใช้ embedding model จากนั้นก็นำไปจัดเก็บใน vector database แล้ว model สร้างข้อความจะตอบคำถามโดยอ้างอิงจากข้อมูลเหล่านั้นครับ
Agent
Agent เป็นฟีเจอร์ที่ช่วยให้เราสามารถสร้าง AWS-managed AI agent ได้โดยใช้ Foundation Model ของ Bedrock และ service อื่นที่เกี่ยวข้อง
ระบบจะรัน action ที่กำหนดไว้ใน action group โดยอัตโนมัติ พร้อมทั้งเรียกใช้ Knowledge Base เพื่อเสริมข้อมูลให้กับ action เหล่านี้เข้าไปอีก จากนั้น model สร้างข้อความก็จะสร้างคำตอบที่เป็นตัว final ออกมาครับ
Prompt Management
Prompt Management เป็นฟีเจอร์แบบ AWS managed สำหรับจัดการ prompt ที่ช่วยให้เราสร้าง prompt template ของตัวเองขึ้นมาได้
รองรับตั้งแต่การสร้าง ทดสอบ ไปจนถึงจัดการเวอร์ชันของ prompt ช่วยให้สามารถนำ prompt ที่เขียนไว้แบบเฉพาะเจาะจงกลับมาใช้ใหม่อย่างประสิทธิภาพมากขึ้น
Flow
Flow เป็นฟีเจอร์ที่ช่วยให้เราสามารถสร้าง AWS-managed AI workflow ได้โดยใช้ Foundation Model ของ Bedrock และ service อื่นที่เกี่ยวข้อง
เราสามารถสร้าง workflow ได้หลากหลายรูปแบบ ตั้งแต่แบบง่าย ๆ เช่น ตอบคำถาม, สร้างข้อความ ไปจนถึงแบบที่มีเงื่อนไข หรือทำงานวนซ้ำ ๆ ได้ผ่านหน้า GUI
ฟีเจอร์การอนุมาน (Inference) และการประเมิน
ส่วนนี้จะแนะนำฟีเจอร์สำหรับการทำ inference และประเมิน Foundation Model ของ Amazon Bedrock ครับ
Batch Inference
Batch Inference เป็นฟีเจอร์ที่ช่วยประมวลผล request จำนวนมากได้อย่างมีประสิทธิภาพโดยจัดการกับหลาย request พร้อมกันแบบ asynchronous
Batch Inference จะมีราคาถูกกว่าแบบ on-demand อยู่ 50% จึงช่วยให้สามารถทำการ inference ด้วยชุดข้อมูลขนาดใหญ่เพื่อปรับปรุงประสิทธิภาพของ model ขึ้นไปได้อีก
สำหรับ Batch Inference ใน Bedrock สามารถดูรายละเอียดเพิ่มเติมได้จากเอกสารด้านล่างครับ
Cross-Region Inference
Cross-Region Inference เป็นฟีเจอร์ที่ช่วยให้เราสามารถส่งคำขอเรียกใช้ model ข้าม region แบบ dynamic ได้ โดยที่ region นั้นจะต้องเป็น region ที่กำหนดไว้ใน Inference Profile
ฟีเจอร์นี้ช่วยให้เราสามารถกระจายทราฟฟิกไปยังหลาย region ของ AWS ได้ ช่วยป้องกันการเกิด throttling และช่วยให้สามารถใช้งานด้วย throughput ที่สูงขึ้น
Model Evaluation
Model Evaluation เป็นฟีเจอร์ที่ช่วยประเมินประสิทธิภาพของ Foundation Model
เราสามารถสร้าง model evaluation job โดยเลือกเกณฑ์การประเมินและ metric ที่ต้องการประเมิน จากนั้นตรวจสอบสรุปผลการประมาณของแต่ละ metric ในรูปแบบรายงานได้
โดยในการประเมิน เราสามารถใช้ชุดข้อมูลที่มีใน model อยู่แล้ว (built-in dataset) หรือชุดข้อมูลที่เราเตรียมไว้เอง (custom dataset) ก็ได้
สำหรับ Model Evaluation ใน Bedrock สามารถดูรายละเอียดเพิ่มเติมได้จากเอกสารด้านล่างครับ
Knowledge Base Evaluation
Knowledge Base Evaluation เป็นฟีเจอร์ที่ช่วยประเมินประสิทธิภาพของ RAG ที่สร้างด้วย Knowledge Base
เราสามารถสร้าง model evaluation job โดยเลือกชุดข้อมูลและ metric ที่ต้องการประเมิน จากนั้นตรวจสอบสรุปผลการประมาณของแต่ละ metric ในรูปแบบรายงานได้
สำหรับฟีเจอร์นี้ เราจำเป็นต้องใช้ชุดข้อมูลที่เราเป็นคนเตรียมเอง (custom dataset) เท่านั้นครับ
ข้อมูลเกี่ยวกับความเป็นส่วนตัวและความปลอดภัย
ในสวนนี้จะขอแนะนำการตั้งค่าและข้อมูลเกี่ยวกับความเป็นส่วนตัวและความปลอดภัยของ Amazon Bedrock ครับ
การบันทึก log
ฟังก์ชันบันทึก log การเรียกใช้ model สามารถเปิดใช้งานได้จากการตั้งค่าผ่านหน้า console ของ Bedrock ตามภาพด้านล่างนี้
การเปิดใช้งานการบันทึก log ช่วยให้คุณสามารถส่ง log เกี่ยวกับการเรียกใช้ Foundation Model ของ Bedrock ไปยัง CloudWatch Logs หรือ S3 ได้
และถ้าหากเราส่ง log ไปยัง CloudWatch Logs จะทำให้เราสามารถใช้ฟีเจอร์ต่าง ๆ ของ CloudWatch เพื่อตรวจสอบการเรียกใช้ model ได้อย่างมีประสิทธิภาพมากขึ้น
นอกจากนี้ การเรียกใช้ API ใน Bedrock จะถูกบันทึกไว้ใน CloudTrail โดยอัตโนมัติด้วย
การเข้าถึงแบบส่วนตัว
เราสามารถใช้ PrivateLink เพื่อเรียกใช้ Foundation Model ของ Bedrock เครือข่ายส่วนตัว (private network) ได้
การจำกัดการเข้าถึง Bedrock ให้อยู่ใน private network จะช่วยให้เราสามารถสร้าง generative AI application แบบส่วนตัวได้
เงื่อนไขการใช้งาน
การตรวจสอบเงื่อนไขการใช้งานเป็นสิ่งสำคัญในการยืนยันว่าความเป็นส่วนตัวของเราจะได้รับการคุ้มครองเมื่อใช้บริการ generative AI
ซึ่งเงื่อนไขการใช้งานของ Bedrock จะระบุไว้เลยครับว่า "ข้อมูล prompt ที่ป้อนเข้าไปจะไม่ถูกนำไปใช้ในการ train model" และ "มีกลไกตรวจจับการใช้งานที่ไม่เหมาะสมโดยอัตโนมัติ" เป็นต้น ซึ่งแสดงให้เห็นว่า AWS ให้ความสำคัญกับการคุ้มครองความเป็นส่วนตัวของผู้ใช้งานมากเลยทีเดียว
สำหรับเงื่อนไขการใช้งานของ Bedrock สามารถดูรายละเอียดเพิ่มเติมได้จากเอกสารด้านล่าง
อ้างอิง
- AWS入門ブログリレー2024〜Amazon Bedrock編〜 | DevelopersIO (บทความต้นฉบับ)