Tutor-GPT adalah pendamping pembelajaran bertenaga LLM yang dikembangkan oleh Plastic Labs. Ini secara dinamis mempertimbangkan kebutuhan pembelajaran Anda dan memperbarui petunjuknya sendiri untuk memberikan pelayanan terbaik bagi Anda.
Kami bersandar pada teori eksperimen pikiran dan sekarang ini lebih dari sekedar tutor literasi, ini adalah teman belajar yang luas. Baca lebih lanjut tentang cara kerjanya di sini.
Tutor-GPT didukung oleh Honcho untuk membangun representasi pengguna yang kuat dan menciptakan pengalaman yang dipersonalisasi untuk setiap pengguna.
Versi tutor-gpt
yang dihosting disebut Bloom sebagai referensi terhadap Masalah Dua Sigma Benjamin Bloom.
Alternatifnya, Anda dapat menjalankan bot Anda sendiri dengan mengikuti petunjuk di bawah.
Proyek tutor-gpt dibagi menjadi beberapa modul berbeda yang membagi logika backend untuk klien berbeda.
agent/
- ini berisi logika inti dan arsitektur promptbot/
- ini berisi implementasi bot perselisihanapi/
- ini berisi antarmuka FastAPI API yang mengekspos logika agent/
www/
- ini berisi front end web NextJS
yang dapat terhubung ke antarmuka APIsupabase/
- berisi skrip SQL yang diperlukan untuk menyiapkan supabase lokal Sebagian besar proyek dikembangkan menggunakan python dengan pengecualian aplikasi NextJS. Untuk python uv
digunakan untuk manajemen ketergantungan dan untuk antarmuka web kami menggunakan pnpm
.
Modul bot/
dan api/
keduanya menggunakan agent/
sebagai ketergantungan dan memuatnya sebagai paket lokal menggunakan uv
CATATAN Informasi lebih lanjut tentang antarmuka web tersedia di www/README README ini terutama berisi informasi tentang backend tutor-gpt dan logika inti tutor
Modul agent
, bot
, dan api
semuanya dikelola menggunakan ruang kerja uv
Bagian ini membahas cara menyiapkan lingkungan python untuk menjalankan Tutor-GPT. Ini memungkinkan Anda menjalankan bot perselisihan, menjalankan aplikasi FastAPI, atau mengembangkan kode agent
.
Perintah di bawah ini akan menginstal semua dependensi yang diperlukan untuk menjalankan proyek tutor-gpt. Kami merekomendasikan penggunaan uv untuk menyiapkan lingkungan virtual untuk proyek tersebut.
git clone https://github.com/plastic-labs/tutor-gpt.git && cd tutor-gpt
uv sync # set up the workspace
source .venv/bin/activate # activate the virtual environment
Dari sini Anda kemudian perlu menjalankan uv sync
di direktori yang sesuai tergantung pada bagian proyek mana yang ingin Anda jalankan. Misalnya untuk menjalankan aplikasi FastAPI Anda perlu menavigasi ke direktori dan menjalankan kembali sinkronisasi
cd api/
uv sync
Anda akan melihat pesan yang menunjukkan bahwa dependensi telah diselesaikan dan/atau diinstal jika belum diinstal sebelumnya.
Alternatifnya (Cara yang disarankan) proyek ini dapat dibangun dan dijalankan dengan buruh pelabuhan. Instal buruh pelabuhan dan pastikan itu berjalan sebelum melanjutkan.
Front end web dibuat dan dijalankan secara terpisah dari basis kode lainnya. Di bawah ini adalah perintah untuk membangun inti proyek tutor-gpt yang mencakup dependensi yang diperlukan untuk menjalankan bot perselisihan atau titik akhir FastAPI.
git clone https://github.com/plastic-labs/tutor-gpt.git
cd tutor-gpt
docker build -t tutor-gpt-core .
Demikian pula, untuk membangun antarmuka web, jalankan perintah di bawah ini
Setiap antarmuka tutor-gpt memerlukan variabel lingkungan yang berbeda agar dapat beroperasi dengan baik. Modul bot/
dan api/
berisi file .env.template
yang dapat Anda gunakan sebagai titik awal. Salin dan ganti nama .env.template
menjadi .env
Di bawah ini adalah penjelasan lebih rinci mengenai variabel lingkungan
OPENAI_API_KEY
— Kunci API untuk Openrouter yang menggunakan API yang kompatibel dengan OpenAIMODEL
— Model openrouter yang akan digunakanBerikutnyaJS & fastAPI
URL
— Titik akhir URL untuk aplikasi frontend Next.jsHONCHO_URL
— URL dasar untuk instance Honcho yang Anda gunakanHONCHO_APP_NAME
— Nama aplikasi honcho yang digunakan untuk Tutor-GPTEkstra Opsional
SENTRY_DSN_API
— Sentry DSN untuk pelaporan kesalahan opsionalBOT_TOKEN
— Ini adalah token bot perselisihan. Anda dapat menemukan petunjuk tentang cara membuat bot dan membuat token di dokumen pycord.THOUGHT_CHANNEL_ID
— Ini adalah saluran perselisihan tempat bot mengeluarkan pemikirannya. Buat saluran di server Anda dan salin ID dengan mengklik kanan saluran dan menyalin tautannya. ID saluran adalah rangkaian angka terakhir dalam tautan. Anda juga dapat menggunakan wadah buruh pelabuhan untuk menjalankan aplikasi secara lokal. Di bawah ini adalah perintah untuk menjalankan bot perselisihan secara lokal menggunakan file .env
yang tidak ada dalam wadah buruh pelabuhan. Berhati-hatilah untuk tidak menambahkan .env
Anda ke dalam wadah buruh pelabuhan karena ini tidak aman dan dapat membocorkan rahasia Anda.
docker run --env-file .env tutor-gpt-core python bot/app.py
Untuk menjalankan webui, Anda perlu menjalankan FastAPI
backend dan container NextJS
frontend secara terpisah. Dalam dua contoh terminal terpisah, jalankan perintah berikut agar kedua aplikasi berjalan. Perilaku saat ini akan memanfaatkan file .env
di repositori lokal Anda dan menjalankan bot.
docker run -p 8000:8000 --env-file .env tutor-gpt-core python -m uvicorn api.main:app --host 0.0.0.0 --port 8000 # FastAPI Backend
docker run tutor-gpt-web
CATATAN: perintah run default di file docker untuk inti menjalankan backend FastAPI sehingga Anda bisa menjalankan docker run --env-file .env tutor-gpt-core
Proyek ini sepenuhnya open source dan menerima setiap dan semua kontribusi open source. Alur kerja untuk berkontribusi adalah membuat fork dari repositori. Anda dapat mengklaim masalah di tab masalah atau memulai rangkaian pesan baru untuk menunjukkan fitur atau perbaikan bug yang sedang Anda kerjakan.
Setelah Anda menyelesaikan kontribusi Anda, buatlah PR yang menunjuk ke cabang staging
dan akan ditinjau oleh manajer proyek. Jangan ragu untuk bergabung dengan kami dalam perselisihan kami untuk mendiskusikan perubahan Anda atau mendapatkan bantuan.
Setelah perubahan Anda diterima dan digabungkan ke dalam staging, perubahan tersebut akan menjalani periode pengujian langsung sebelum memasukkan upstream ke main
Tutor-GPT dilisensikan di bawah Lisensi GPL-3.0. Pelajari lebih lanjut di file Lisensi