โปรเจ็กต์นี้คือตัวอย่างการใช้งานแอป Todo ซึ่งมีจุดมุ่งหมายเพื่อแสดงวิธีใช้ GitHub Copilot เพื่อสร้างแอปสิ่งที่ต้องทำที่ขับเคลื่อนด้วย AI โดยใช้ Azure OpenAI และ Azure Cosmos DB
ใบสมัครที่กรอกเรียบร้อยแล้วจะอยู่ในสาขาที่กรอกเรียบร้อยแล้ว
คุณสามารถใช้ GitHub Codespaces เพื่อทำงานในโปรเจ็กต์นี้ได้โดยตรงจากเบราว์เซอร์ของคุณ โดยเลือกปุ่ม Code จากนั้นเลือกแท็บ Codespaces แล้วคลิก Create Codespaces บน main
คุณยังสามารถใช้ส่วนขยาย Dev Containers สำหรับ VS Code เพื่อทำงานภายในเครื่องโดยใช้สภาพแวดล้อม dev ที่พร้อมใช้งาน
หลังจากที่คุณโคลนหรือเปิดโปรเจ็กต์ในสภาพแวดล้อม dev ของคุณแล้ว ให้รันคำสั่งต่อไปนี้เพื่อติดตั้งการขึ้นต่อกัน:
npm install
โปรเจ็กต์นี้มีโครงสร้างเป็น monorepo และใช้ประโยชน์จาก NPM Workspaces มีการจัดดังนี้:
.devcontainer/ # Dev container configuration
.github/ # GitHub Actions CI/CD pipeline
packages/ # The different parts of our app
| - server/ # The Express server, hosting the API and the website
+- client/ # The website client
package.json # NPM workspace configuration
npm run build
คำสั่งนี้จะสร้างแพ็คเกจไคลเอนต์และเซิร์ฟเวอร์
ในการจัดเตรียมทรัพยากรบน Azure และปรับใช้บริการ เราใช้ Azure Dev CLI
# Only needed once
azd auth login --use-device-code
# Provision and deploy infrastructure
azd up
คุณยังสามารถจัดเตรียมและปรับใช้โครงสร้างพื้นฐานแยกกันได้:
# Provision infrastructure
azd provision
# Deploy infrastructure
azd deploy
ในการเรียกใช้แอปพลิเคชันภายในเครื่อง คุณจะต้องตั้งค่าตัวแปรสภาพแวดล้อมต่อไปนี้ในไฟล์ .env
ที่รากของโปรเจ็กต์โดยมีเนื้อหาดังต่อไปนี้:
AZURE_OPENAI_ENDPOINT= < your Azure OpenAI endpoint >
AZURE_COSMOS_DB_ENDPOINT= < your Azure Cosmos DB endpoint >
เนื่องจากแอปพลิเคชันอาศัยบริการ Azure สำหรับการดำเนินการ OpenAI ให้สำเร็จและพื้นที่จัดเก็บ Cosmos DB คุณจะต้องจัดเตรียมทรัพยากรเหล่านี้บน Azure ก่อน (ดูวิธีตั้งค่าการปรับใช้)
จากนั้นรันคำสั่งต่อไปนี้เพื่อสร้างไฟล์ .env
ของคุณ:
azd env get-values > .env
เมื่อไฟล์ .env
ของคุณพร้อมแล้ว คุณสามารถเริ่มแอปพลิเคชันได้โดยการรันคำสั่งต่อไปนี้ที่รากของโปรเจ็กต์:
npm run start
สิ่งนี้จะรันทั้งไคลเอนต์และเซิร์ฟเวอร์:
โครงการนี้ยินดีรับการสนับสนุนและข้อเสนอแนะ การบริจาคส่วนใหญ่กำหนดให้คุณยอมรับข้อตกลงใบอนุญาตผู้ร่วมให้ข้อมูล (CLA) โดยประกาศว่าคุณมีสิทธิ์ที่จะให้สิทธิ์แก่เราในการใช้การบริจาคของคุณจริงๆ สำหรับรายละเอียด โปรดไปที่ https://cla.opensource.microsoft.com
เมื่อคุณส่งคำขอดึง บอท CLA จะกำหนดโดยอัตโนมัติว่าคุณจำเป็นต้องจัดเตรียม CLA และตกแต่ง PR อย่างเหมาะสมหรือไม่ (เช่น การตรวจสอบสถานะ ความคิดเห็น) เพียงทำตามคำแนะนำที่ได้รับจากบอท คุณจะต้องทำสิ่งนี้เพียงครั้งเดียวกับ repos ทั้งหมดโดยใช้ CLA ของเรา
โครงการนี้ได้นำหลักจรรยาบรรณของ Microsoft Open Source มาใช้ สำหรับข้อมูลเพิ่มเติม โปรดดูคำถามที่พบบ่อยเกี่ยวกับจรรยาบรรณหรือติดต่อ [email protected] หากมีคำถามหรือความคิดเห็นเพิ่มเติม
โครงการนี้อาจมีเครื่องหมายการค้าหรือโลโก้สำหรับโครงการ ผลิตภัณฑ์ หรือบริการ การใช้เครื่องหมายการค้าหรือโลโก้ของ Microsoft โดยได้รับอนุญาตจะอยู่ภายใต้และต้องปฏิบัติตามแนวทางเครื่องหมายการค้าและแบรนด์ของ Microsoft การใช้เครื่องหมายการค้าหรือโลโก้ของ Microsoft ในเวอร์ชันแก้ไขของโครงการนี้จะต้องไม่ทำให้เกิดความสับสนหรือบ่งบอกถึงการสนับสนุนของ Microsoft การใช้เครื่องหมายการค้าหรือโลโก้ของบุคคลที่สามจะต้องเป็นไปตามนโยบายของบุคคลที่สามเหล่านั้น