
ลองติดตั้ง Generative AI Use Cases JP (ชื่อย่อ: GenU) แบบง่ายๆ
ช่วงนี้ได้ยินมาว่า Generative AI Use Cases JP (ชื่อย่อ: GenU) เป็นเครื่องมือที่ใช้งานง่ายและสะดวกมาก จึงได้ลองติดตั้งและใช้งานจริง ซึ่งระหว่างกระบวนการติดตั้ง เราได้พบกับความท้าทายหลายอย่าง ดังนั้นจึงได้จัดทำขั้นตอนการติดตั้งที่เรียบง่ายและสามารถใช้งานได้ทันที
AWS Documentation ถูกเขียนขึ้นสำหรับผู้ที่มีประสบการณ์ใช้งาน AWS ในระดับหนึ่ง ซึ่งอาจทำให้ผู้เริ่มต้นใช้งาน AWS เข้าใจได้ยากเล็กน้อย ดังนั้นในครั้งนี้ เราจะอธิบายขั้นตอนการตั้งค่าและการใช้งานโดยเน้นเฉพาะฟังก์ชันที่จำเป็นที่สุด เพื่อให้สามารถเริ่มต้นใช้งานได้อย่างง่ายดาย
จุดเด่นของ GenU คืออะไร
GenU มีจุดเด่นหลายอย่างเมื่อเทียบกับ AI Chatbot อื่นๆ เราจะมาแนะนำคุณสมบัติหลักของมัน สามารถดูข้อมูลรายละเอียดและ Source Code ที่เผยแพร่บน Official GitHub ได้เลย
ฟีเจอร์ AI แชทที่ครบครัน
GenU รองรับฟังก์ชันพื้นฐานทั้งหมดของ Generative AI Chat
- การใช้งาน AI Model ประสิทธิภาพสูง: รองรับการใช้ AI Model ล่าสุด เช่น Claude 3.7 Sonnet
- การสร้างภาพคุณภาพสูง: รองรับฟีเจอร์ Image Generation ที่ทรงพลัง เช่น Stable Diffusion 3.5 Large
ข้อดีของ Open Source
เนื่องจากเผยแพร่ภายใต้ MIT-0 License จึงมีข้อดีดังต่อไปนี้
- ประหยัดค่าใช้จ่าย: ลดต้นทุนได้มากเมื่อเทียบกับบริการเชิงพาณิชย์
- ความยืดหยุ่นในการปรับแต่ง: สามารถแก้ไขและปรับแต่งได้อย่างอิสระตามความต้องการ
การใช้ฟีเจอร์ Serverless ของ AWS
เนื่องจากใช้ Serverless Architecture จึงมีข้อดีดังต่อไปนี้
- คิดค่าบริการตามการใช้งานจริง (Pay-as-you-go): ค่าใช้จ่ายของเซิร์ฟเวอร์เป็นแบบ จ่ายตามการใช้งานจริง
- ไม่มีค่าใช้จ่ายส่วนเกิน (No Unnecessary Costs): หากติดตั้งแล้วแต่ไม่ได้ใช้งาน จะไม่มีค่าใช้จ่ายเกิดขึ้น
- จ่ายเฉพาะส่วนที่ใช้งานจริง (Usage-based Billing): คิดค่าใช้จ่ายเฉพาะทรัพยากรที่ใช้งานจริง เช่น การประมวลผล AI และการสื่อสาร
- ประหยัดค่าใช้จ่าย (Cost Efficiency): ตามการคำนวณค่าใช้จ่ายของ AWS (ภาษาญี่ปุ่น) หากใช้งานเวอร์ชันแบบเรียบง่าย (ไม่มี RAG) และมีผู้ใช้ 50 คน ค่าใช้จ่ายจะอยู่ที่ประมาณ 39.63 ดอลลาร์ต่อเดือน เมื่อเปรียบเทียบกับ ChatGPT Plus ซึ่งมีค่าใช้จ่าย 20 ดอลลาร์ต่อผู้ใช้ 1 คนต่อเดือน (ณ มีนาคม 2025) จะเห็นว่าเป็นตัวเลือกที่คุ้มค่ามาก
ความได้เปรียบด้านความปลอดภัย
- ความเป็นส่วนตัวของข้อมูล: ข้อมูลจะถูกเก็บไว้ภายใน AWS Environment ของคุณเอง ทำให้สามารถดำเนินการได้อย่างปลอดภัย
- ไม่มีความเสี่ยงจากการเรียนรู้ซ้ำ: ไม่มีความกังวลว่า AI จะนำข้อมูลของคุณไปใช้ในการเรียนรู้ซ้ำ
- ลดความเสี่ยงของข้อมูลรั่วไหล: ข้อมูลจะไม่รั่วไหลออกไปนอก AWS Account ที่คุณใช้งาน
ความสามารถในการขยายตัวสูง
แม้ว่าในขั้นตอนการติดตั้งแบบง่ายนี้จะไม่ได้ครอบคลุมฟีเจอร์เหล่านี้ แต่สามารถขยายความสามารถเพิ่มเติมได้ดังนี้
- การเชื่อมต่อกับฟีเจอร์ RAG (Retrieval-Augmented Generation) บน AWS เช่น Amazon Kendra และ Amazon Bedrock Knowledge Bases
- การใช้ Generative AI ผ่าน Use Case Builder
- การกำหนดค่า Domain และ Hostname ได้อย่างอิสระ
- การปรับแต่งการตั้งค่าการยืนยันตัวตน เช่น การจำกัด IP และการจำกัด Domain ของ User
- การเชื่อมต่อกับ SSO (Single Sign-On) ที่รองรับ SAML เช่น Google Workspace และ Entra ID
ข้อกังวลเกี่ยวกับการเรียนรู้ซ้ำของ AI
โดยทั่วไป AI Services อาจนำข้อมูลที่ผู้ใช้ป้อนเข้าไปใช้ในการเรียนรู้ซ้ำ (Retraining) ตัวอย่างเช่น หากป้อนข้อมูลที่เป็น ข้อมูลลับขององค์กร หรือ ข้อมูลส่วนบุคคล ข้อมูลเหล่านั้นอาจถูกนำไปใช้เป็น Training Data และส่งผลต่อการสร้างคำตอบของ AI สำหรับผู้ใช้รายอื่น
โดยเฉพาะในสภาพแวดล้อมขององค์กรอาจมีความเสี่ยงดังต่อไปนี้
- การรั่วไหลของข้อมูลลับ: หากป้อนเอกสารเชิงกลยุทธ์ภายในองค์กรหรือข้อมูลเกี่ยวกับการพัฒนาผลิตภัณฑ์ ข้อมูลเหล่านั้นอาจถูกใช้เป็น Training Data และอาจถูกเปิดเผยให้คู่แข่งเห็นผ่านการใช้งาน AI
- การแพร่กระจายของข้อมูลส่วนบุคคล: หาก AI ประมวลผลเอกสารที่มีข้อมูลลูกค้าหรือพนักงาน อาจก่อให้เกิดปัญหาด้าน Privacy และ Compliance
- การปกป้องทรัพย์สินทางปัญญา: ข้อมูลเกี่ยวกับสิทธิบัตรที่ยังไม่ได้ยื่นจดทะเบียนหรือ Algorithm เฉพาะขององค์กร อาจถูกเปิดเผยโดยอ้อมผ่านการเรียนรู้ของ AI
- ความรับผิดชอบทางกฎหมาย: ในบางอุตสาหกรรมมีกฎระเบียบที่เข้มงวดเกี่ยวกับการจัดการข้อมูล ซึ่งการใช้ External AI Services อาจทำให้เกิดปัญหาด้าน Compliance
ใน GenU ข้อมูลทั้งหมดจะถูกจัดเก็บและประมวลผลภายใน AWS Environment ของผู้ใช้เอง ทำให้สามารถขจัดข้อกังวลเหล่านี้ได้ AI จะเก็บบันทึกการสนทนาและไฟล์ที่ส่งไว้ภายใน AWS Account ขององค์กร โดยไม่มีการส่งข้อมูลออกไปยังระบบภายนอก ด้วยวิธีนี้ องค์กรสามารถรักษา Data Sovereignty (อธิปไตยของข้อมูล) และใช้เทคโนโลยี AI ล่าสุดได้อย่างปลอดภัย ซึ่งเป็นข้อได้เปรียบที่สำคัญโดยเฉพาะสำหรับการใช้งานในองค์กร
โครงสร้างการติดตั้งแบบเรียบง่าย
ครั้งนี้เราจะแนะนำวิธีการติดตั้งในโครงสร้างที่เรียบง่ายเพื่อให้สามารถทดลองใช้งาน GenU ได้อย่างรวดเร็ว โดยการตั้งค่าให้น้อยที่สุดเท่าที่จำเป็นเพื่อสร้างสภาพแวดล้อมที่สามารถใช้งานฟีเจอร์หลักได้
สภาพแวดล้อมสำหรับ Deployment
การ Deploy จะใช้สภาพแวดล้อมดังต่อไปนี้
- EC2 Instance: ใช้เป็นสภาพแวดล้อมชั่วคราวสำหรับการดำเนินการ Deploy
- การดึงซอร์สโค้ด: ดึงซอร์สโค้ดจาก GitHub บน EC2
- การสร้าง AWS Services: ใช้ EC2 เพื่อดำเนินการสร้างบริการต่างๆ บน AWS
- การจัดการ Instance: หลังจาก Deploy เสร็จสิ้น จะสามารถ Stop EC2 Instance (หรือ Terminate ได้เลยหากไม่จำเป็นต้องใช้งานอีกต่อไป)
สภาพแวดล้อมสำหรับการสร้างระบบ
GenU ถูกสร้างขึ้นโดยใช้บริการ AWS ต่อไปนี้ร่วมกัน
- CloudFront + S3: ใช้สำหรับ Web Hosting และจัดเก็บ Source Code
- API Gateway + Lambda: ใช้เป็นสภาพแวดล้อมสำหรับรันโปรแกรม
- Cognito: ใช้สำหรับยืนยันตัวตนของ User
- Bedrock: ใช้เป็นสภาพแวดล้อมสำหรับ Generative AI Model
- DynamoDB: ใช้เป็น Database สำหรับเก็บประวัติการสนทนาและข้อมูลอื่นๆ
- Transcribe: ใช้สำหรับการแปลงเสียงพูดเป็นข้อความ (Speech-to-Text)
AI Model ที่ใช้
ในการติดตั้งครั้งนี้จะใช้ AI Model ประสิทธิภาพสูงต่อไปนี้
- Anthropic: Claude 3.7 Sonnet – Multimodal Model ที่ทรงพลังล่าสุดที่เปิดตัวเมื่อวันที่ 25 กุมภาพันธ์ 2025
- Stability AI: Stable Diffusion 3.5 Large – Model ที่สามารถสร้างภาพความละเอียดสูงได้
- Amazon: NovaPro – Multimodal Model ประสิทธิภาพสูงที่พัฒนาโดย AWS
เนื่องจาก Model เหล่านี้สามารถใช้งานได้เฉพาะใน Oregon Region (us-west-2) เราจึงใช้ Bedrock ใน Region นี้โดยเฉพาะ ส่วนบริการอื่นๆ ในการติดตั้งครั้งนี้จะใช้ Singapore Region (ap-southeast-1) เนื่องจากคาดการณ์ว่าผู้ใช้จะเข้าถึงจากประเทศไทย หากใช้งานจากญี่ปุ่นสามารถเปลี่ยนไปใช้ Tokyo Region (ap-northeast-1) ได้
เมื่อเร็วๆ นี้ เนื่องจากความต้องการใช้งาน Claude 3.7 Sonnet บน Bedrock เพิ่มขึ้นอย่างมาก อาจมีบางช่วงเวลาที่ไม่สามารถใช้งานได้ ดังนั้นเราจึงเปิดใช้งาน Amazon NovaPro เป็น Model สำรองเพื่อรองรับกรณีดังกล่าว
การตั้งค่า User management
ครั้งนี้เราจะปิดใช้งานฟีเจอร์การลงทะเบียน User ผ่านหน้าจอบนเบราว์เซอร์เพื่อให้การทำงานร่วมกันมีความเรียบง่ายและปลอดภัย แทนที่จะให้ User ลงทะเบียนเอง เราจะสร้าง User โดยตรงผ่าน Cognito จาก AWS Management Console วิธีนี้จะช่วยให้เฉพาะ User ที่ได้รับการอนุมัติจากผู้ดูแลระบบเท่านั้นที่สามารถเข้าถึงระบบได้
ข้อกำหนดเบื้องต้น
ก่อนเริ่มการติดตั้ง โปรดตรวจสอบให้แน่ใจว่าคุณมีเงื่อนไขต่อไปนี้ครบถ้วน
- การเป็นเจ้าของ AWS Account
- มีสิทธิ์ IAM User (AdministratorAccess) หรือ Root User และสามารถเข้าถึง AWS Management Console ได้
ขั้นตอนการติดตั้ง
จากนี้ไปจะอธิบายขั้นตอนการติดตั้ง GenU ตามลำดับ
นอกจากนี้ชื่อของแต่ละ Resource ที่สร้างขึ้นจะมีคำนำหน้า "keisuke-" ซึ่งเป็นชื่อของผู้เขียนบทความต้นฉบับ หากคุณต้องการทดลองติดตั้งจริง โปรดเปลี่ยนชื่อ Resource ตามความเหมาะสม
1. ตั้งค่า Bedrock
ก่อนอื่นเปิดใช้งาน AI Models ที่ใช้สำหรับ GenU บน Bedrock
-
Login เข้าสู่ AWS Management Console และเปลี่ยน Region เป็น Oregon Region (us-west-2)
-
ไปที่ Bedrock Service จะแสดงหน้าจอแบบนี้
-
คลิก "Model access" ในหัวข้อ Bedrock configurations จากเมนูด้านซ้ายล่างสุด
แล้วกดปุ่ม "Enable specific models" เพื่อเข้าสู่หน้าการเลือก Models
เมื่อเข้ามาหน้าจอ Edit model access ให้เปิดใช้งาน Models ดังนี้
Step 1
Edit model access
ค้นหาแล้วเปลี่ยน "and" เป็น "or" และเลือก Models ตามนี้
- Amazon: Nova Pro
- Anthropic: Claude 3.7 Sonnet
- Stability AI: Stable Diffusion 3.5 Large
แล้วคลิก "Next"
Step 2
Add use case details for Anthropic
Use case details
- Company name: ป้อนชื่อบริษัท
- Company website URL: ป้อน URL บริษัท
- What industry do you operate in?: เลือกอุตสาหกรรมที่บริษัทกำลังดำเนินการ เช่น "Software as a Service"
- Who are your intended users?: เลือก User ให้เหมาะสมกับงาน เช่น "Internal employees" ครั้งนี้สำหรับพนักงานภายในบริษัท
- Describe your use cases (do not share any PII or IP information).: ป้อนคำอธิบายให้สอดคล้องกับงานที่จะใช้ เช่น "Validation Generative AI" ครั้งนี้ใช้เกี่ยวกับ Generative AI
แล้วคลิก "Next"
Step 3
Review and submit
ตรวจสอบรายละเอียดดั้งแต่ "Step 1 - Step 2" และคลิก "Submit" ด้านล่างสุด
2. สร้าง IAM Role
สร้าง IAM Role สำหรับ EC2 Instance ที่ใช้จัดการ AWS Resource
ดูตัวอย่างได้ที่ลิงก์ด้านล่างนี้
ตัวอย่างการสร้าง IAM Role สำหรับ Firehose ในบทความนี้
Step 1
Select trusted entity
・Trusted entity type: AWS service
Use case
・Service or use case: EC2
・Use case: EC2
Step 2
Add permissions
・Permissions policies:
AdministratorAccess
AmazonSSMManagedInstanceCore
Step 3
Name, review, and create
Role details
・Role name: ec2-keisuke-test-role
สร้าง EC2 Instance สำหรับ Deploy
ครั้งนี้สร้าง EC2 Instance ใน Singapore Region (ap-southeast-1)
ดูตัวอย่างได้ที่ลิงก์ด้านล่างนี้
ตัวอย่างการสร้าง EC2 Instance ในบทความนี้
Region:
Singapore
※Launch instances
Name and tags
・Name:keisuke-test
(ป้อนชื่อตามต้องการ)Application and OS Images (Amazon Machine Image)
・Amazon Machine Image (AMI):Amazon Linux 2023 AMI
Instance type
・Instance type:t3a.medium
(แนะนำให้เลือก Instance Size ตั้งแต่medium
ขึ้นไปเพื่อความรวดเร็วในการจัดการ AWS Resource)Key pair (login)
Proceed without a key pair (Not recommended) (ครั้งนี้จะไม่ใช้ Key pair)
Network settings
Firewall (security groups)
・Security group name - required:keisuke-test
(ตั้งชื่อที่ต้องการ)
・Description - required:keisuke-test
(ป้อนตามต้องการ)
Inbound security groups rules
・คลิกRemove
(ครั้งนี้จะไม่ตั้งค่า Security group rule)Configure storage
1x:8
GiBgp3
Root volume (Default)ー สามารถเพิ่ม SSM Role ได้ที่ Advanced details ー
คลิก Advanced details เพื่อขยายหน้าจอ แล้วเลือก Role ที่เราสร้างไว้ก่อนหน้านี้
IAM instance profile:ec2-keisuke-test-role
เมื่อ Instance มีสถานะเป็น Running แล้ว ให้เชื่อมต่อ Instance โดยใช้ SSM
4. ตั้งค่าสภาพแวดล้อมบน EC2
เมื่อเชื่อมต่อ Instance แล้ว ให้ติดตั้ง Software ที่จำเป็นในสภาพแวดล้อมบน EC2 นี้
# สลับไปที่ root user
sudo su -
# ติดตั้ง Git
yum install git -y
# ติดตั้ง Node.js
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
. ~/.nvm/nvm.sh
nvm install 22
node -v
npm -v
# ติดตั้ง AWS CDK
npm install -g aws-cdk
5. การดึง Source Code และตั้งค่า
ดึง Source Code จาก GitHub และดำเนินการตั้งค่าที่จำเป็น
# สร้าง Directory และโคลน Repository
mkdir ~/git
cd ~/git
git clone https://github.com/aws-samples/generative-ai-use-cases-jp.git
# แก้ไขไฟล์การตั้งค่า
cd ~/git/generative-ai-use-cases-jp
vi packages/cdk/parameter.ts
แก้ไขไฟล์ parameter.ts
ตามด้านล่างนี้
・Region ที่ Deploy คือ ap-southeast-1 (Singapore)
・Region ที่ใช้ Model คือ us-west-2 (Oregon)
dev: {
region: "ap-southeast-1",
ragEnabled: false,
modelIds: [
'us.anthropic.claude-3-7-sonnet-20250219-v1:0',
'us.amazon.nova-pro-v1:0',
],
imageGenerationModelIds: [
'stability.sd3-5-large-v1:0',
],
modelRegion: "us-west-2",
selfSignUpEnabled: false,
},
ติดตั้ง npm package และ Deploy
ติดตั้ง package ที่จำเป็นและ Deploy AWS Resource
# ติดตั้ง npm package
npm ci
# CDK Bootstrap
npx -w packages/cdk cdk bootstrap
# ตั้งค่าสภาพแวดล้อมเป็น dev และ Deploy
npm run cdk:deploy -- -c env=dev
แต่ละคำสั่ง npm อาจใช้เวลาหลายนาทีกว่าจะเสร็จสิ้น
เมื่อมีข้อความยืนยันการ Deploy ปรากฏขึ้น ให้พิมพ์ y
เพื่อดำเนินการต่อ
Do you wish to deploy these changes (y/n)? y
7. ตรวจสอบการเสร็จสิ้นการ Deploy
เมื่อการ Deploy เสร็จสิ้น ระบบจะแสดง URL สำหรับการเข้าถึง ให้มองหาบรรทัดที่มีลักษณะดังต่อไปนี้
GenerativeAiUseCasesStackdev.WebUrl = https://[CloudFrontHostname].cloudfront.net
ส่วนที่เป็น [CloudFrontHostname] จะถูกแทนที่ด้วย Hostname ที่ CloudFront กำหนดแบบสุ่ม
โดย URL นี้จะเป็นที่อยู่สำหรับเข้าถึง GenU
การจัดการ User
ดูวิธีการจัดการ User ได้ที่ลิงก์ด้านล่างนี้ เนื่องจากเขียนบทความแยกไว้แล้ว
สรุป
ครั้งนี้เราได้แนะนำขั้นตอนการติดตั้ง "Generative AI Use Cases JP (GenU)" ซึ่งเป็น Open Source AI Chatbot ที่ทำงานบน AWS โดยใช้โครงสร้างที่เรียบง่าย
การติดตั้งในรูปแบบ Simple Configuration นี้ช่วยให้สามารถใช้งานฟีเจอร์พื้นฐานได้ด้วยการตั้งค่าขั้นต่ำ
AI Model ใช้ Amazon Bedrock ใน Oregon Region และบริการอื่นๆ ถูกติดตั้งใน Singapore Region (หรือ Tokyo Region) ส่วน User management ใช้ Amazon Cognito และเพื่อความปลอดภัย จึงได้ปิดการลงทะเบียน User ด้วยตนเอง
GenU มีจุดเด่นสำคัญสำหรับการใช้งาน AI ภายในองค์กร สามารถใช้ AI ประสิทธิภาพสูงได้โดยยังคงรักษาความปลอดภัยของข้อมูล ขจัดความเสี่ยงของ ข้อมูลรั่วไหลข้อมูลจากการเรียนรู้ซ้ำของ AI และใช้ AI Technology ล่าสุดได้อย่างคุ้มค่าและปลอดภัย
นอกจากนี้ ยังสามารถขยายฟีเจอร์เพิ่มเติมได้ตามความต้องการ เช่น เพิ่ม RAG (Retrieval-Augmented Generation) เชื่อมต่อกับ SSO (Single Sign-On) และปรับแต่งฟังก์ชันขั้นสูงอื่นๆ แม้ผู้ที่มีความรู้เกี่ยวกับ AWS ไม่มาก ก็สามารถติดตั้ง GenU ได้ง่ายโดยทำตามขั้นตอนนี้
โครงสร้างแบบเรียบง่ายที่แนะนำในครั้งนี้สามารถใช้เป็นพื้นฐานในการขยายฟีเจอร์เพิ่มเติมตามความต้องการ เช่น การเพิ่ม RAG (Retrieval-Augmented Generation) หรือการเชื่อมต่อกับ SSO (Single Sign-On) รวมถึงฟังก์ชันขั้นสูงอื่นๆ แม้ผู้ที่มีความรู้และผู้ที่มีประสบการณ์เกี่ยวกับ AWS ไม่มาก ก็สามารถติดตั้ง GenU ได้อย่างค่อนข้างง่ายโดยทำตามขั้นตอนนี้
ลองติดตั้ง GenU และเริ่มต้นใช้งาน AI อย่างปลอดภัยและมีประสิทธิภาพกันเถอะ!
บทความต้นฉบับ
แปลโดย: POP(Tinnakorn Maneewong) จากบริษัท Classmethod (Thailand) ครับ !