feat: optimize the efficiency of generating chatbot conversation name (#3472)
This commit is contained in:
@@ -5,7 +5,6 @@ from .create_installed_app_when_app_created import handle
|
||||
from .create_site_record_when_app_created import handle
|
||||
from .deduct_quota_when_messaeg_created import handle
|
||||
from .delete_installed_app_when_app_deleted import handle
|
||||
from .generate_conversation_name_when_first_message_created import handle
|
||||
from .update_app_dataset_join_when_app_model_config_updated import handle
|
||||
from .update_provider_last_used_at_when_messaeg_created import handle
|
||||
from .update_app_dataset_join_when_app_published_workflow_updated import handle
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
from core.llm_generator.llm_generator import LLMGenerator
|
||||
from events.message_event import message_was_created
|
||||
from extensions.ext_database import db
|
||||
from models.model import AppMode
|
||||
|
||||
|
||||
@message_was_created.connect
|
||||
def handle(sender, **kwargs):
|
||||
message = sender
|
||||
conversation = kwargs.get('conversation')
|
||||
is_first_message = kwargs.get('is_first_message')
|
||||
extras = kwargs.get('extras', {})
|
||||
|
||||
auto_generate_conversation_name = True
|
||||
if extras:
|
||||
auto_generate_conversation_name = extras.get('auto_generate_conversation_name', True)
|
||||
|
||||
if auto_generate_conversation_name and is_first_message:
|
||||
if conversation.mode != AppMode.COMPLETION.value:
|
||||
app_model = conversation.app
|
||||
if not app_model:
|
||||
return
|
||||
|
||||
# generate conversation name
|
||||
try:
|
||||
name = LLMGenerator.generate_conversation_name(app_model.tenant_id, message.query)
|
||||
conversation.name = name
|
||||
except:
|
||||
pass
|
||||
|
||||
db.session.merge(conversation)
|
||||
db.session.commit()
|
||||
Reference in New Issue
Block a user