Proyek ini adalah API sederhana untuk mengelola posting dan komentar dengan AI Moderation. API dibangun menggunakan Fastapi dan Pydantic, dan termasuk fitur untuk pendaftaran pengguna, login, manajemen pos dan komentar, moderasi konten bertenaga AI, dan analitik. Selain itu, bot disertakan untuk menghasilkan posting dan komentar menggunakan AI dan berinteraksi dengan API.
.
├── alembic/
├── app/
│ ├── __pycache__/
│ ├── auth.py
│ ├── crud.py
│ ├── database.py
│ ├── deps.py
│ ├── main.py
│ ├── models.py
│ ├── moderation.py
│ ├── schemas.py
├── bot/
│ ├── __pycache__/
│ ├── bot.py
│ ├── config.py
│ ├── template_config.py
├── venv/
├── tests/
│ ├── test_main.py
│ ├── test_post.py
├── .gitignore
├── alembic.ini
├── init_db.py
├── readme
├── requirements.txt
└── test.db
Buat dan aktifkan lingkungan virtual Python:
python -m venv venv
venv S cripts a ctivatepython3 -m venv venv
source venv/bin/activatePasang paket Python yang diperlukan:
pip install -r requirements.txt Pastikan Anda memiliki file Key Account (JSON) Google Cloud Service dan atur variabel lingkungan GOOGLE_APPLICATION_CREDENTIALS .
set GOOGLE_APPLICATION_CREDENTIALS=C: p ath t o y our s ervice-account-file.json export GOOGLE_APPLICATION_CREDENTIALS= " /path/to/your/service-account-file.json "Gunakan Alembic untuk menerapkan migrasi basis data:
alembic upgrade headJalankan skrip berikut untuk menginisialisasi database:
python init_db.py Buat file .env di root proyek dan tambahkan variabel berikut:
GOOGLE_APPLICATION_CREDENTIALS= " /path/to/your/service-account-file.json "Tambahkan variabel khusus lingkungan lainnya yang Anda butuhkan untuk pengaturan FASTAPI Anda.
Untuk memulai server FASTAPI, jalankan:
uvicorn app.main:app --reload API akan dapat diakses di http://127.0.0.1:8000 .
Root Endpoint : GET /
Mengembalikan pesan selamat datang.
Pendaftaran Pengguna : POST /register/
Daftarkan pengguna baru.
Login Pengguna : POST /login/
Dapatkan token akses untuk pengguna yang diautentikasi.
Buat Posting : POST /posts/
Buat posting baru.
Buat Komentar : POST /posts/{post_id}/comments/
Tambahkan komentar ke posting.
Dapatkan Analytics : GET /api/comments-daily-breakdown?date_from=<YYYY-MM-DD>&date_to=<YYYY-MM-DD>
Dapatkan data komentar agregat harian dalam kisaran tanggal.
Respons Otomatis terhadap Komentar : /comments/auto-response/
Titik akhir dan logika untuk mengaktifkan respons otomatis terhadap komentar setelah penundaan.
Pengaturan bot dapat disesuaikan dalam file bot/config.py , termasuk:
Untuk menjalankan bot dan mulai menghasilkan posting dan komentar, jalankan:
python bot/bot.pyUntuk mengaktifkan bot untuk menghasilkan konten teks menggunakan AI generatif Google, ikuti langkah -langkah ini:
Buat Proyek Google Cloud :
Aktifkan API AI generatif :
Dapatkan kredensial API :
Instal Perpustakaan Klien API :
pip install google-generativeaiKonfigurasikan aplikasi :
bot/config.py : # bot/config.py
class Config :
API_URL = "http://localhost:8000" # URL of your FastAPI app
AI_API_URL = "https://ai.google.dev/generate-text" # Google's AI API endpoint
AI_API_KEY = "your_ai_key" # Replace with your Google AI API keyTes disediakan untuk fungsi Post Creation dan Analytics. Untuk menjalankan tes, jalankan:
pytestIni akan menjalankan tes untuk pembuatan pasca, analitik, dan aspek lain dari aplikasi.
git checkout -b feature-branch ).git commit -m 'Add some feature' ).git push origin feature-branch ).Untuk pertanyaan tambahan atau pemecahan masalah, silakan merujuk ke dokumentasi resmi untuk Fastapi, Sqlalchemy, dan Google Generative AI API. ``