| | |
| | | import json |
| | | |
| | | import fitz |
| | | import io |
| | | from docx import Document |
| | | from dashscope import get_tokenizer # dashscope版本 >= 1.14.0 |
| | | |
| | | from app.models import ComplexChatSessionDao |
| | | from app.service.auth import decode_access_token |
| | | |
| | | |
| | |
| | | '.docx'): |
| | | text = await read_word(file) |
| | | |
| | | return await get_str_token(text) |
| | | return await get_str_token(text) |
| | | |
| | | |
| | | async def service_chat_message(db, message_id: str): |
| | | message = await ComplexChatSessionDao(db).get_session_by_id(message_id) |
| | | content = "" |
| | | title = "" |
| | | if message: |
| | | content = message.content |
| | | title= json.loads(message.query).get("query") |
| | | return title, content |
| | | |
| | | |
| | | async def generate_word_document(title, content): |
| | | doc = Document() |
| | | # 添加标题 |
| | | doc.add_heading(title, level=1) |
| | | |
| | | # 将内容按段落分割并写入文档 |
| | | for paragraph in content.split('\n'): |
| | | # print("--------------:", paragraph) |
| | | doc.add_paragraph(paragraph) |
| | | |
| | | return doc |