myChat เป็นโครงการโอเพ่นซอร์สที่สร้างแบบจำลองตาม ChatGPT มีอินเทอร์เฟซที่ใช้งานง่ายสำหรับการโต้ตอบกับ LLM ที่คล้าย GPT ผ่าน OpenAI API โครงการนี้ไม่มีส่วนเกี่ยวข้องโดยตรงกับ OpenAI แต่อย่างใด
เราใช้ MongoDB เพื่อจัดเก็บข้อมูลผู้ใช้และข้อมูลเซสชัน คุณสามารถตั้งค่าอินสแตนซ์ MongoDB ได้หลายวิธี:
เมื่อคุณมีอินสแตนซ์ MongoDB ที่ทำงานอยู่ คุณจะต้องรับสตริงการเชื่อมต่อ หากคุณใช้ MongoDB Atlas คุณสามารถค้นหาสตริงการเชื่อมต่อได้ในการตั้งค่าการเชื่อมต่อของคลัสเตอร์
เพิ่มสตริงการเชื่อมต่อ MongoDB ลงในไฟล์ . .env.local
ของคุณดังนี้:
เราใช้ Redis เพื่อจำกัดอัตราในเส้นทาง API ของเรา คุณสามารถตั้งค่าอินสแตนซ์ Redis ได้หลายวิธี ได้แก่:
เมื่อคุณมีอินสแตนซ์ Redis ที่ทำงานอยู่ คุณจะต้องรับสตริงการเชื่อมต่อ หากคุณใช้ RedisLabs คุณสามารถค้นหาสตริงการเชื่อมต่อได้ในหน้าการกำหนดค่าของฐานข้อมูลของคุณ
โคลนที่เก็บนี้:
git clone https://github.com/your-username/myChat.git
หรือเริ่มต้นใช้งานฟีเจอร์เทมเพลตของ GitHub
นำทางไปยังไดเร็กทอรีโครงการ:
cd myChat
ติดตั้งการพึ่งพา:
npm install
สร้างไฟล์ .env.local
ในรูทโปรเจ็กต์และเพิ่มตัวแปรสภาพแวดล้อมที่จำเป็น:
touch .env.local
เพิ่มสิ่งต่อไปนี้ลงในไฟล์ .env.local
:
NEXTAUTH_URL=http://localhost:3000
MONGODB_URI=yourURI
NEXTAUTH_SECRET=yourSecret
ENCRYPTION_KEY: a 32-digit hexadecimal string for AES-128 encryption (for users' API key)
REDIS_URL=yourRedisConnectionString
แทนที่ http://localhost:3000
ด้วยพอร์ตใดก็ตามที่แอปพลิเคชันของคุณทำงานอยู่, yourURI
ด้วยสตริงการเชื่อมต่อ MongoDB, yourSecret
ด้วยสตริงสุ่มที่ปลอดภัย, your32HexDigitString
ด้วยสตริงเลขฐานสิบหก 32 หลักสำหรับการเข้ารหัส AES-128 และ yourRedisConnectionString
ด้วย Redis ของคุณ สตริงการเชื่อมต่อ
-
ในการรันเซิร์ฟเวอร์การพัฒนา:
npm run dev
หากต้องการสร้างแอปพลิเคชันสำหรับการผลิต:
npm run build
ในการเริ่มต้นเซิร์ฟเวอร์ที่ใช้งานจริง:
npm run start
หากต้องการปรับใช้ myChat Clone ของคุณกับ Vercel ให้ทำตามขั้นตอนเหล่านี้:
ลงทะเบียนสำหรับบัญชี Vercel หากคุณยังไม่ได้ดำเนินการ
ติดตั้ง Vercel CLI:
npm install -g vercel
เข้าสู่ระบบบัญชี Vercel ของคุณจากบรรทัดคำสั่ง:
vercel login
นำทางไปยังไดเร็กทอรีโครงการของคุณ:
cd myChat
รันคำสั่งต่อไปนี้เพื่อปรับใช้แอปพลิเคชันของคุณ:
vercel --prod
ในระหว่างกระบวนการปรับใช้ Vercel CLI จะถามคุณเกี่ยวกับตัวแปรสภาพแวดล้อม ระบุค่าเดียวกันกับที่คุณใช้สำหรับไฟล์ .env.local
ของคุณ:
NEXTAUTH_URL: https://your-vercel-url.vercel.app
MONGODB_URI: yourURI
NEXTAUTH_SECRET: yourSecret
ENCRYPTION_KEY: a 32-digit hexadecimal string for AES-128 encryption (for users' API key)
REDIS_URL=yourRedisConnectionString
แทนที่ http://localhost:3000
ด้วยพอร์ตใดก็ตามที่แอปพลิเคชันของคุณทำงานอยู่, yourURI
ด้วยสตริงการเชื่อมต่อ MongoDB, yourSecret
ด้วยสตริงสุ่มที่ปลอดภัย, your32HexDigitString
ด้วยสตริงเลขฐานสิบหก 32 หลักสำหรับการเข้ารหัส AES-128 และ yourRedisConnectionString
ด้วย Redis ของคุณ สตริงการเชื่อมต่อ
โปรดจำไว้ว่าทุกครั้งที่คุณทำการเปลี่ยนแปลง myChat Clone และต้องการปรับใช้เวอร์ชันที่อัปเดต คุณสามารถเรียกใช้ vercel --prod
จากไดเร็กทอรีโปรเจ็กต์ได้
เรายินดีรับการมีส่วนร่วม! หากต้องการมีส่วนร่วม โปรดทำตามขั้นตอนเหล่านี้:
git clone https://github.com/your-username/myChat.git
git checkout -b feature/my-new-feature
หรือ git checkout -b fix/my-new-fix
git commit -am 'Add some feature'
git push origin feature/my-new-feature
โครงการนี้ได้รับอนุญาตภายใต้ใบอนุญาต MIT