การใช้งานสแต็กแบบเต็มรูปแบบของ React + AWS แบบเต็มของแอปพลิเคชันตัวอย่างที่พบในเอกสาร OpenAI API อย่างเป็นทางการ ดูรายละเอียดแผนภาพสถาปัตยกรรมของระบบนี้ นี่เป็นเครื่องมือการเรียนการสอนสำหรับช่อง YouTube "Full Stack with Lawrence" และสำหรับหลักสูตรมหาวิทยาลัยบริติชโคลัมเบีย "การใช้เทคโนโลยีคลาวด์ปัญญาประดิษฐ์"
ทำงานร่วมกับสภาพแวดล้อม Linux, Windows และ MacOS
ตรวจสอบข้อกำหนดของโครงการ: บัญชี AWS และการเข้าถึง CLI, Terraform, Python 3.11, NPM และ Docker Compose
ตรวจสอบและแก้ไขไฟล์การกำหนดค่า Master Terraform
เรียกใช้ make และเพิ่มข้อมูลประจำตัวของคุณในไฟล์ .env ที่สร้างขึ้นใหม่ในรูทของ repo
เริ่มต้นสร้างและเรียกใช้แอปพลิเคชัน
git clone https://github.com/FullStackWithLawrence/aws-openai.git
make # scaffold a .env file in the root of the repo
make init # initialize Terraform, Python virtual environment and NPM
make build # deploy AWS cloud infrastructure, build ReactJS web app
make run # run the web app locally in your dev environment เสร็จสิ้น OpenAI API : ปรับใช้ API พร้อมผลิตเพื่อรวมเข้ากับชุดบริการที่สมบูรณ์ของ OpenAI รวมถึง CHATGTP, Dall · E, Whisper และ TTS
การรวม Langchain : จุดสิ้นสุด API ที่เรียบง่ายสำหรับการสร้างบริบทที่ตระหนักถึงการใช้เหตุผลแอปพลิเคชันด้วยนามธรรมที่ยืดหยุ่นของ Langchain และชุดเครื่องมือ AI-First ใช้จุดสิ้นสุดนี้เพื่อพัฒนาแอพพลิเคชั่นที่หลากหลายตั้งแต่ chatbots ไปจนถึงระบบตอบคำถาม
Dynamic Chatgpt Proftsing : เทมเพลต Terraform ง่าย ๆ เพื่อสร้างแชทบอทที่มีค่าสูง โปรแกรมและสกินแอพแชทของคุณเองในไม่กี่นาที
การเรียกใช้ฟังก์ชัน : คุณสมบัติการรวมขั้นสูงที่สุดของ OpenAI จนถึงปัจจุบัน การเรียกใช้ฟังก์ชัน OpenAI API เป็นคุณสมบัติที่ช่วยให้นักพัฒนาสามารถรวมฟังก์ชั่น Python ที่กำหนดเองเข้ากับการประมวลผลการตอบสนองการแชท ตัวอย่างเช่นเมื่อ chatbot ขับเคลื่อนโดยโมเดล GPT-3 ของ OpenAI กำลังสร้างการตอบสนองมันสามารถเรียกฟังก์ชั่น Python ที่กำหนดเองเหล่านี้เพื่อดำเนินการเฉพาะหรือการคำนวณจากนั้นรวมผลลัพธ์ของฟังก์ชั่นเหล่านี้ในการตอบสนอง คุณสมบัติที่ทรงพลังนี้สามารถใช้ในการสร้างแชทบอทแบบไดนามิกและโต้ตอบมากขึ้นซึ่งสามารถทำงานได้เช่นการดึงข้อมูลแบบเรียลไทม์ทำการคำนวณหรือโต้ตอบกับ API หรือบริการอื่น ๆ ดูซอร์สโค้ด Python สำหรับเอกสารและตัวอย่างเพิ่มเติมรวมถึง "get_current_weather ()" จากเอกสาร Openai API อย่างเป็นทางการ
ปลั๊กอินการเรียกใช้ฟังก์ชั่น : เราสร้างโมเดล "ปลั๊กอิน" ที่ใช้ YAML ของเราเอง ดูปลั๊กอินตัวอย่างนี้และเอกสารนี้สำหรับรายละเอียดหรือลองใช้กับเว็บไซต์สดนี้ เทมเพลต Yaml สามารถเก็บไว้ในท้องถิ่นหรือเสิร์ฟจากถัง AWS S3 ที่ปลอดภัย คุณจะพบชุดปลั๊กอินตัวอย่างที่สนุกสนานที่นี่
ซอร์สโค้ดและเอกสารที่สมบูรณ์อยู่ที่นี่
ตอบสนองแอพที่ใช้ประโยชน์จาก Vite.js, @chatscope/chat-ui-kit-react และ React-Pro-SideBar
เอกสารที่สมบูรณ์ตั้งอยู่ที่นี่ รหัส Python ตั้งอยู่ที่นี่
REST API ที่ใช้แอปพลิเคชันตัวอย่าง 30 รายการจากเอกสาร OpenAI API อย่างเป็นทางการโดยใช้วิธีการ Terraform แบบแยกส่วน ใช้ประโยชน์จากชุด AI ของ OpenAi รวมถึง GPT-3.5, GPT-4, Dall · E, Whisper, Embeddings และการกลั่นกรอง
.env และ terraform.tfvarsข้อกำหนดทางเลือก:
เอกสารโดยละเอียดสำหรับแต่ละจุดสิ้นสุดมีอยู่ที่นี่: เอกสารประกอบ
หากต้องการรับการสนับสนุนจากชุมชนให้ไปที่หน้าปัญหาอย่างเป็นทางการสำหรับโครงการนี้
โครงการนี้แสดงให้เห็นถึงแนวทางปฏิบัติที่ดีที่สุดในการเขียนโค้ดที่ดีสำหรับการจัดการบริการไมโครที่มีความสำคัญต่อภารกิจในสภาพแวดล้อมของทีมนั่นคือการยึดมั่นในวิธีการ 12 ปัจจัย โปรดดูแนวทางปฏิบัติที่ดีที่สุดในการจัดการรหัสนี้สำหรับรายละเอียดเพิ่มเติม
เราต้องการให้โครงการนี้เข้าถึงได้มากขึ้นสำหรับนักเรียนและผู้เรียนเป็นเครื่องมือการเรียนการสอนในขณะที่ไม่เพิ่มปริมาณงานตรวจสอบรหัสที่ไม่เหมาะสมให้กับทุกคนที่มีอำนาจผสานสำหรับโครงการ ด้วยเหตุนี้เราจึงได้เพิ่มเครื่องมือการบังคับใช้รหัสล่วงหน้าและรหัสการบังคับใช้รหัสแบบคอมมิชชั่นหลายแบบรวมถึงขั้นตอนอัตโนมัติสำหรับการบำรุงรักษาเวอร์ชันของการพึ่งพาแพ็คเกจการประเมินคำขอดึงและการเปิดตัวความหมาย
เรายินดีต้อนรับผลงาน! มีหลายวิธีที่คุณจะมีส่วนร่วมโดยไม่คำนึงถึงภูมิหลังของคุณ นอกเหนือจากการร้องขอการดึงโครงการนี้จะได้รับประโยชน์จากผู้มีส่วนร่วมที่มุ่งเน้นไปที่เอกสารและวิธีการสร้างเนื้อหาวิดีโอการทดสอบการมีส่วนร่วมของชุมชนและผู้พิทักษ์เพื่อช่วยให้เรามั่นใจว่าเราปฏิบัติตามมาตรฐานการพัฒนาสำหรับการใช้ AI อย่างมีจริยธรรม
สำหรับนักพัฒนาโปรดดู:
คุณยังสามารถติดต่อ Lawrence McDaniel ได้โดยตรง องค์ประกอบรหัส ณ เดือนกุมภาพันธ์ -2024:
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
Python 29 732 722 2663
HCL 30 352 714 2353
Markdown 52 779 6 2344
YAML 23 112 149 1437
JavaScript 39 114 127 1088
JSX 6 45 47 858
CSS 5 32 14 180
make 1 27 30 120
Text 6 13 0 117
INI 2 15 0 70
HTML 2 1 0 65
Jupyter Notebook 1 0 186 48
Bourne Shell 5 17 55 47
TOML 1 1 0 23
Dockerfile 1 4 4 5
-------------------------------------------------------------------------------
SUM: 203 2,244 2,054 11,418
-------------------------------------------------------------------------------