zhaoqingang
2025-04-10 9ea07e00fc8b92e9b75849859c1ecce77c7096d1
app/service/v2/app_driver/chat_dialog.py
@@ -6,22 +6,10 @@
class ChatDialog(ChatBase):
    def __init__(self, token):
        self.token = token
    async def get_headers(self):
        return {
            'Content-Type': 'application/json',
            'Authorization': f'Bearer {self.token}'
        }
    async def chat_completions(self, url, data, headers):
        complete_response = ""
        async for line in self.http_stream(url, data, headers):
            # logger.error(line)
            # print(line)
            if line.startswith("data:"):
                complete_response = line.strip("data:").strip()
            else:
@@ -34,13 +22,37 @@
                yield json_data
            except json.JSONDecodeError as e:
                # print(e)
                # print(complete_response)
                logger.info("Invalid JSON data------------------")
                # print(e)
    async def chat_sessions(self, url, data, headers):
        res = await self.http_post(url, data, headers)
        if res.status_code == 200:
            return res.json()
        else:
            return {}
    @staticmethod
    async def request_data(question, session_id=""):
        return {
            "question": question,
            "stream": True,
            "session_id": session_id
        }
    @staticmethod
    async def complex_request_data(question, dataset_ids, session_id=""):
        return {
            "question": question,
            "stream": True,
            "session_id": session_id,
            "kb_ids": dataset_ids
        }
if __name__ == "__main__":