Skip to content

Commit 5dc5183

Browse files
committed
refactor: chat
1 parent 2cf01dd commit 5dc5183

File tree

4 files changed

+52
-9
lines changed

4 files changed

+52
-9
lines changed

apps/application/chat_pipeline/step/chat_step/impl/base_chat_step.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -309,9 +309,8 @@ def execute_block(self, message_list: List[BaseMessage],
309309
'reasoning_content')
310310
asker = manage.context.get('form_data', {}).get('asker', None)
311311
post_response_handler.handler(chat_id, chat_record_id, paragraph_list, problem_text,
312-
content, manage, self, padding_problem_text, client_id,
313-
reasoning_content=reasoning_content if reasoning_content_enable else '',
314-
asker=asker)
312+
chat_id, manage, self, padding_problem_text,
313+
reasoning_content=reasoning_content if reasoning_content_enable else '')
315314
add_access_num(client_id, client_type, manage.context.get('application_id'))
316315
return manage.get_base_to_response().to_block_response(str(chat_id), str(chat_record_id),
317316
content, True,
@@ -327,8 +326,8 @@ def execute_block(self, message_list: List[BaseMessage],
327326
write_context(self, manage, 0, 0, all_text)
328327
asker = manage.context.get('form_data', {}).get('asker', None)
329328
post_response_handler.handler(chat_id, chat_record_id, paragraph_list, problem_text,
330-
all_text, manage, self, padding_problem_text, client_id, reasoning_content='',
331-
asker=asker)
329+
chat_id, manage, self, padding_problem_text,
330+
reasoning_content='')
332331
add_access_num(client_id, client_type, manage.context.get('application_id'))
333332
return manage.get_base_to_response().to_block_response(str(chat_id), str(chat_record_id), all_text, True, 0,
334333
0, _status=status.HTTP_500_INTERNAL_SERVER_ERROR)
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# Generated by Django 5.2.3 on 2025-07-01 02:46
2+
3+
import application.models.application_chat
4+
import common.encoder.encoder
5+
from django.db import migrations, models
6+
7+
8+
class Migration(migrations.Migration):
9+
10+
dependencies = [
11+
('application', '0002_alter_application_user_alter_chat_id'),
12+
]
13+
14+
operations = [
15+
migrations.AddField(
16+
model_name='chat',
17+
name='asker',
18+
field=models.JSONField(default=application.models.application_chat.default_asker, encoder=common.encoder.encoder.SystemEncoder, verbose_name='访问者'),
19+
),
20+
migrations.AddField(
21+
model_name='chat',
22+
name='meta',
23+
field=models.JSONField(default=dict, verbose_name='元数据'),
24+
),
25+
migrations.AlterField(
26+
model_name='applicationchatuserstats',
27+
name='chat_user_type',
28+
field=models.CharField(choices=[('ANONYMOUS_USER', '匿名用户'), ('CHAT_USER', '对话用户'), ('SYSTEM_API_KEY', '系统API_KEY'), ('APPLICATION_API_KEY', '应用API_KEY'), ('PLATFORM_USER', '平台用户')], default='ANONYMOUS_USER', max_length=64, verbose_name='对话用户类型'),
29+
),
30+
migrations.AlterField(
31+
model_name='chat',
32+
name='chat_user_id',
33+
field=models.CharField(default=None, null=True, verbose_name='对话用户id'),
34+
),
35+
migrations.AlterField(
36+
model_name='chat',
37+
name='chat_user_type',
38+
field=models.CharField(choices=[('ANONYMOUS_USER', '匿名用户'), ('CHAT_USER', '对话用户'), ('SYSTEM_API_KEY', '系统API_KEY'), ('APPLICATION_API_KEY', '应用API_KEY'), ('PLATFORM_USER', '平台用户')], default='ANONYMOUS_USER', max_length=64, verbose_name='客户端类型'),
39+
),
40+
]

apps/application/models/application_chat.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,16 +22,23 @@ class ChatUserType(models.TextChoices):
2222
CHAT_USER = "CHAT_USER", "对话用户"
2323
SYSTEM_API_KEY = "SYSTEM_API_KEY", "系统API_KEY"
2424
APPLICATION_API_KEY = "APPLICATION_API_KEY", "应用API_KEY"
25+
PLATFORM_USER = "PLATFORM_USER", "平台用户"
26+
27+
28+
def default_asker():
29+
return {'user_name': '游客'}
2530

2631

2732
class Chat(AppModelMixin):
2833
id = models.UUIDField(primary_key=True, max_length=128, default=uuid.uuid7, editable=False, verbose_name="主键id")
2934
application = models.ForeignKey(Application, on_delete=models.CASCADE)
3035
abstract = models.CharField(max_length=1024, verbose_name="摘要")
31-
chat_user_id = models.UUIDField(verbose_name="客户端id", default=None, null=True)
36+
chat_user_id = models.CharField(verbose_name="对话用户id", default=None, null=True)
3237
chat_user_type = models.CharField(max_length=64, verbose_name="客户端类型", choices=ChatUserType.choices,
3338
default=ChatUserType.ANONYMOUS_USER)
3439
is_deleted = models.BooleanField(verbose_name="逻辑删除", default=False)
40+
asker = models.JSONField(verbose_name="访问者", default=default_asker, encoder=SystemEncoder)
41+
meta = models.JSONField(verbose_name="元数据", default=dict)
3542

3643
class Meta:
3744
db_table = "application_chat"

apps/users/serializers/user.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -270,9 +270,6 @@ def _get_user_roles(user_ids):
270270
user['role_setting'] = user_role_setting_mapping.get(user_id, [])
271271
return result
272272

273-
@valid_license(model=User, count=2,
274-
message=_(
275-
'The community version supports up to 2 users. If you need more users, please contact us (https://fit2cloud.com/).'))
276273
@transaction.atomic
277274
def save(self, instance, with_valid=True):
278275
if with_valid:

0 commit comments

Comments
 (0)