# Generated by Django 5.2.1 on 2025-05-29 09:24 import django.db.models.deletion from django.conf import settings from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [ ('knowledge_base', '0001_initial'), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='ChatHistory', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('conversation_id', models.CharField(db_index=True, max_length=100)), ('title', models.CharField(blank=True, default='New chat', help_text='对话标题', max_length=100, null=True)), ('parent_id', models.CharField(blank=True, max_length=100, null=True)), ('role', models.CharField(choices=[('user', '用户'), ('assistant', 'AI助手'), ('system', '系统')], max_length=20)), ('content', models.TextField()), ('tokens', models.IntegerField(default=0, help_text='消息token数')), ('metadata', models.JSONField(blank=True, default=dict, help_text="\n {\n 'model_id': 'xxx',\n 'dataset_id_list': ['id1', 'id2', ...],\n 'dataset_external_id_list': ['ext1', 'ext2', ...],\n 'primary_knowledge_base': 'id1'\n }\n ")), ('created_at', models.DateTimeField(auto_now_add=True)), ('is_deleted', models.BooleanField(default=False)), ('knowledge_base', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='knowledge_base.knowledgebase')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'ordering': ['created_at'], 'indexes': [models.Index(fields=['conversation_id', 'created_at'], name='chat_chathi_convers_90ca0c_idx'), models.Index(fields=['user', 'created_at'], name='chat_chathi_user_id_326d36_idx'), models.Index(fields=['conversation_id', 'is_deleted'], name='chat_chathi_convers_bcd094_idx')], }, ), ]