DjangoTemplateをベースにOpenAI APIを利用したチャットアプリを学習として作成しました
- Django Channels(Web Socket)を用いてストリーミング出力に対応しています
- ルーム毎にハイパラメータやアイコンを変更できます
- 会話履歴数を指定して過去のやり取りを踏まえた会話ができます
- 上り/下りで使用したToken数を確認できます
DjangoTemplateとの差分のみ表示
IS_USE_RADIS = False
OPENAI_API_KEY='*** YOUR OPENAI_API_KEY ***'
RADIS_HOST='*** RADIS HOST ***'
RADIS_PORT='*** RADIS PORT ***'
$ pip install -r requirements-base.txt
$ ProjectSetupBat
$ python manage.py runserver
詳細は requirements-base.txt をご覧ください
python=3.9.18
Django==4.2.1
channels==4.0.0
本アプリケーションで使われる各種ライブラリのライセンスは改変したものを含めて本ライセンスには含まれません。各種ライブラリの原ライセンスに従って利用してください。
DjangoOpenAIStreamingChat/
├─accounts
│ ├─forms
│ ├─models
│ │ └─receivers
│ └─views
│ └─send_mail
├─apps
│ ├─access_security
│ ├─chat
│ ├─inquiry
│ │ ├─models
│ │ │ └─receivers
│ │ └─views
│ └─user_properties
│ ├─models
│ └─views
├─common
│ ├─lib
│ │ ├─axes
│ │ ├─social_core
│ │ └─social_django
│ ├─scripts
│ └─views
├─config
│ ├─acsess_logic
│ ├─admin_protect
│ ├─extra_settings
│ └─security
├─media
├─static
│ ├─apps
│ └─templates
│ ├─base
│ ├─common
│ │ ├─css
│ │ ├─func
│ │ └─lib
│ ├─meta_image
│ └─pages
│ ├─apps
│ │ └─chat
│ │ └─css
│ └─home
├─templates
│ ├─accounts
│ │ ├─AccountDelete
│ │ ├─AccountLock
│ │ ├─EmailChange
│ │ │ └─mail_template
│ │ ├─LogIn
│ │ ├─PasswordChange
│ │ ├─PasswordReset
│ │ │ └─mail_template
│ │ └─SignUp
│ │ └─mail_template
│ ├─apps
│ │ ├─chat
│ │ │ └─room
│ │ │ └─include
│ │ ├─inquiry
│ │ │ └─inquiry_form
│ │ │ └─notice_admin_mail_template
│ │ └─user_properties
│ │ ├─asset
│ │ └─Settings
│ ├─common
│ │ ├─asset
│ │ └─debug
│ └─pages
│ ├─general
│ └─home
└─templatetags