โจทย์ อาจ ถูกตั้งค่าให้ใช้งานกับการ Deploy Large Language Model (LLM) ผ่านผู้ให้บริการที่รองรับ เช่น OpenAI, Azure หรือ Hugging Face ซึ่งจะมี hosted endpoint (API) ที่เราสามารถเข้าถึงได้ด้วยข้อมูลรับรองที่ถูกต้อง (API key หรือ token) ในคอร์สนี้ เราจะพูดถึงผู้ให้บริการเหล่านี้:
- OpenAI ที่มีโมเดลหลากหลาย รวมถึงซีรีส์ GPT หลัก
- Azure OpenAI สำหรับโมเดล OpenAI ที่เน้นความพร้อมใช้งานในองค์กร
- Hugging Face สำหรับโมเดลโอเพ่นซอร์สและ inference server
คุณต้องใช้บัญชีของตัวเองสำหรับแบบฝึกหัดเหล่านี้ โจทย์เป็นทางเลือก คุณสามารถเลือกตั้งค่าผู้ให้บริการหนึ่งราย หลายราย หรือไม่ตั้งค่าเลยก็ได้ ขึ้นอยู่กับความสนใจของคุณ คำแนะนำสำหรับการสมัคร:
| สมัคร | ค่าใช้จ่าย | API Key | Playground | หมายเหตุ |
|---|---|---|---|---|
| OpenAI | ราคาค่าใช้บริการ | แบบ Project | No-Code, Web | มีโมเดลให้เลือกหลายแบบ |
| Azure | ราคาค่าใช้บริการ | SDK Quickstart | Studio Quickstart | ต้องสมัครขอใช้งานล่วงหน้า |
| Hugging Face | ราคาค่าใช้บริการ | Access Tokens | Hugging Chat | Hugging Chat มีโมเดลให้เลือกจำกัด |
ทำตามขั้นตอนด้านล่างเพื่อ ตั้งค่า repository นี้ให้ใช้งานกับผู้ให้บริการต่าง ๆ โจทย์ที่ต้องการผู้ให้บริการเฉพาะจะมี tag เหล่านี้ในชื่อไฟล์:
aoai- ต้องใช้ Azure OpenAI endpoint และ keyoai- ต้องใช้ OpenAI endpoint และ keyhf- ต้องใช้ Hugging Face token
คุณจะตั้งค่าผู้ให้บริการหนึ่งราย ไม่ตั้งค่า หรือทุกเจ้าเลยก็ได้ โจทย์ที่เกี่ยวข้องจะ error หากไม่มีข้อมูลรับรอง
เราถือว่าคุณได้อ่านคำแนะนำข้างต้นและสมัครกับผู้ให้บริการที่เกี่ยวข้อง พร้อมรับข้อมูลรับรองสำหรับการยืนยันตัวตน (API_KEY หรือ token) ในกรณี Azure OpenAI เราถือว่าคุณมีการ deploy Azure OpenAI Service (endpoint) ที่มีอย่างน้อยหนึ่ง GPT model สำหรับ chat completion แล้ว
ขั้นตอนถัดไปคือการตั้งค่า local environment variables ตามนี้:
-
ดูในโฟลเดอร์หลัก จะมีไฟล์
.env.copyที่มีเนื้อหาแบบนี้:# OpenAI Provider OPENAI_API_KEY='<add your OpenAI API key here>' ## Azure OpenAI AZURE_OPENAI_API_VERSION='2024-02-01' # Default is set! AZURE_OPENAI_API_KEY='<add your AOAI key here>' AZURE_OPENAI_ENDPOINT='<add your AOIA service endpoint here>' AZURE_OPENAI_DEPLOYMENT='<add your chat completion model name here>' AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT='<add your embeddings model name here>' ## Hugging Face HUGGING_FACE_API_KEY='<add your HuggingFace API or token here>'
-
คัดลอกไฟล์นั้นเป็น
.envด้วยคำสั่งด้านล่าง ไฟล์นี้จะถูก gitignore เพื่อป้องกันข้อมูลลับรั่วไหลcp .env.copy .env
-
กรอกค่า (แทนที่ placeholder ด้านขวาของ
=) ตามที่อธิบายในหัวข้อถัดไป -
(ทางเลือก) ถ้าใช้ GitHub Codespaces คุณสามารถบันทึก environment variables เป็น Codespaces secrets ที่ผูกกับ repository นี้ได้ กรณีนี้คุณไม่ต้องตั้งค่าไฟล์ .env ในเครื่อง แต่โปรดทราบว่าทางเลือกนี้ใช้ได้เฉพาะกับ GitHub Codespaces เท่านั้น ถ้าใช้ Docker Desktop ยังต้องตั้งค่าไฟล์ .env เหมือนเดิม
มาดูชื่อของตัวแปรแต่ละตัวเพื่อเข้าใจความหมายกัน:
| ตัวแปร | คำอธิบาย |
|---|---|
| HUGGING_FACE_API_KEY | คือ access token ที่คุณตั้งค่าในโปรไฟล์ |
| OPENAI_API_KEY | คือ authorization key สำหรับใช้บริการ OpenAI (ที่ไม่ใช่ Azure) |
| AZURE_OPENAI_API_KEY | คือ authorization key สำหรับใช้บริการนี้ |
| AZURE_OPENAI_ENDPOINT | คือ endpoint ที่ deploy สำหรับ Azure OpenAI resource |
| AZURE_OPENAI_DEPLOYMENT | คือ endpoint สำหรับโมเดล text generation |
| AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT | คือ endpoint สำหรับโมเดล text embeddings |
หมายเหตุ: ตัวแปรสองตัวสุดท้ายของ Azure OpenAI จะเป็นโมเดลเริ่มต้นสำหรับ chat completion (text generation) และ vector search (embeddings) ตามลำดับ วิธีการตั้งค่าจะอธิบายในโจทย์ที่เกี่ยวข้อง
ค่า endpoint และ key ของ Azure OpenAI จะหาได้จาก Azure Portal ดังนั้นเริ่มจากตรงนี้
- ไปที่ Azure Portal
- คลิกที่ตัวเลือก Keys and Endpoint ใน sidebar (เมนูด้านซ้าย)
- คลิก Show Keys - จะเห็น KEY 1, KEY 2 และ Endpoint
- ใช้ค่า KEY 1 สำหรับ AZURE_OPENAI_API_KEY
- ใช้ค่า Endpoint สำหรับ AZURE_OPENAI_ENDPOINT
ถัดไป เราต้องการ endpoint สำหรับโมเดลที่เรา deploy
- คลิกที่ตัวเลือก Model deployments ใน sidebar (เมนูซ้าย) ของ Azure OpenAI resource
- ในหน้าที่ไปถึง คลิก Manage Deployments
จะนำคุณไปที่เว็บไซต์ Azure OpenAI Studio ซึ่งจะหา value อื่น ๆ ตามที่อธิบายด้านล่าง
- ไปที่ Azure OpenAI Studio จาก resource ของคุณ ตามที่อธิบายข้างบน
- คลิกที่แท็บ Deployments (sidebar ซ้าย) เพื่อดูโมเดลที่ deploy อยู่
- ถ้าโมเดลที่ต้องการยังไม่ได้ deploy ให้ใช้ Create new deployment เพื่อ deploy
- คุณต้องมีโมเดล text-generation - แนะนำ: gpt-35-turbo
- คุณต้องมีโมเดล text-embedding - แนะนำ text-embedding-ada-002
จากนั้นอัปเดต environment variables ให้ตรงกับ Deployment name ที่ใช้ ซึ่งโดยปกติจะตรงกับชื่อโมเดลถ้าไม่ได้เปลี่ยนชื่อเอง ตัวอย่างเช่น คุณอาจมี:
AZURE_OPENAI_DEPLOYMENT='gpt-35-turbo'
AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT='text-embedding-ada-002'อย่าลืมบันทึกไฟล์ .env เมื่อกรอกข้อมูลเสร็จ จากนั้นออกจากไฟล์และกลับไปทำตามคำแนะนำสำหรับรัน notebook
API key ของ OpenAI จะหาได้ใน บัญชี OpenAI ของคุณ ถ้ายังไม่มี ให้สมัครบัญชีและสร้าง API key เมื่อได้ key แล้ว ให้นำไปกรอกในตัวแปร OPENAI_API_KEY ในไฟล์ .env
Token ของ Hugging Face จะหาได้ในโปรไฟล์ที่ Access Tokens อย่าโพสต์หรือแชร์ token นี้สาธารณะ ให้สร้าง token ใหม่สำหรับโปรเจกต์นี้และคัดลอกไปใส่ในไฟล์ .env ที่ตัวแปร HUGGING_FACE_API_KEY หมายเหตุ: จริง ๆ แล้วนี่ไม่ใช่ API key แต่ใช้สำหรับ authentication ดังนั้นจึงใช้ชื่อแบบนี้เพื่อความสอดคล้อง
ข้อจำกัดความรับผิดชอบ: เอกสารนี้ได้รับการแปลโดยใช้บริการแปลภาษา AI Co-op Translator แม้เราจะพยายามให้ความถูกต้องมากที่สุด แต่โปรดทราบว่าการแปลโดยอัตโนมัติอาจมีข้อผิดพลาดหรือความไม่ถูกต้อง เอกสารต้นฉบับในภาษาต้นทางควรถือเป็นแหล่งข้อมูลที่เชื่อถือได้ สำหรับข้อมูลสำคัญ ขอแนะนำให้ใช้บริการแปลโดยนักแปลมืออาชีพ ทางเราจะไม่รับผิดชอบต่อความเข้าใจผิดหรือการตีความที่เกิดจากการใช้การแปลนี้