| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131 | 
							- #
 - #  Copyright 2025 The InfiniFlow Authors. All Rights Reserved.
 - #
 - #  Licensed under the Apache License, Version 2.0 (the "License");
 - #  you may not use this file except in compliance with the License.
 - #  You may obtain a copy of the License at
 - #
 - #      http://www.apache.org/licenses/LICENSE-2.0
 - #
 - #  Unless required by applicable law or agreed to in writing, software
 - #  distributed under the License is distributed on an "AS IS" BASIS,
 - #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 - #  See the License for the specific language governing permissions and
 - #  limitations under the License.
 - #
 - 
 - from common import HOST_ADDRESS
 - from ragflow_sdk import RAGFlow
 - from ragflow_sdk.modules.chat import Chat
 - 
 - 
 - def test_create_chat_with_name(get_api_key_fixture):
 -     API_KEY = get_api_key_fixture
 -     rag = RAGFlow(API_KEY, HOST_ADDRESS)
 -     kb = rag.create_dataset(name="test_create_chat")
 -     display_name = "ragflow.txt"
 -     with open("test_data/ragflow.txt", "rb") as file:
 -         blob = file.read()
 -     document = {"display_name": display_name, "blob": blob}
 -     documents = []
 -     documents.append(document)
 -     docs = kb.upload_documents(documents)
 -     for doc in docs:
 -         doc.add_chunk("This is a test to add chunk")
 -     llm = Chat.LLM(
 -         rag,
 -         {
 -             "model_name": "glm-4-flash@ZHIPU-AI",
 -             "temperature": 0.1,
 -             "top_p": 0.3,
 -             "presence_penalty": 0.4,
 -             "frequency_penalty": 0.7,
 -             "max_tokens": 512,
 -         },
 -     )
 -     rag.create_chat("test_create_chat", dataset_ids=[kb.id], llm=llm)
 - 
 - 
 - def test_update_chat_with_name(get_api_key_fixture):
 -     API_KEY = get_api_key_fixture
 -     rag = RAGFlow(API_KEY, HOST_ADDRESS)
 -     kb = rag.create_dataset(name="test_update_chat")
 -     display_name = "ragflow.txt"
 -     with open("test_data/ragflow.txt", "rb") as file:
 -         blob = file.read()
 -     document = {"display_name": display_name, "blob": blob}
 -     documents = []
 -     documents.append(document)
 -     docs = kb.upload_documents(documents)
 -     for doc in docs:
 -         doc.add_chunk("This is a test to add chunk")
 -     llm = Chat.LLM(
 -         rag,
 -         {
 -             "model_name": "glm-4-flash@ZHIPU-AI",
 -             "temperature": 0.1,
 -             "top_p": 0.3,
 -             "presence_penalty": 0.4,
 -             "frequency_penalty": 0.7,
 -             "max_tokens": 512,
 -         },
 -     )
 -     chat = rag.create_chat("test_update_chat", dataset_ids=[kb.id], llm=llm)
 -     chat.update({"name": "new_chat"})
 - 
 - 
 - def test_delete_chats_with_success(get_api_key_fixture):
 -     API_KEY = get_api_key_fixture
 -     rag = RAGFlow(API_KEY, HOST_ADDRESS)
 -     kb = rag.create_dataset(name="test_delete_chat")
 -     display_name = "ragflow.txt"
 -     with open("test_data/ragflow.txt", "rb") as file:
 -         blob = file.read()
 -     document = {"display_name": display_name, "blob": blob}
 -     documents = []
 -     documents.append(document)
 -     docs = kb.upload_documents(documents)
 -     for doc in docs:
 -         doc.add_chunk("This is a test to add chunk")
 -     llm = Chat.LLM(
 -         rag,
 -         {
 -             "model_name": "glm-4-flash@ZHIPU-AI",
 -             "temperature": 0.1,
 -             "top_p": 0.3,
 -             "presence_penalty": 0.4,
 -             "frequency_penalty": 0.7,
 -             "max_tokens": 512,
 -         },
 -     )
 -     chat = rag.create_chat("test_delete_chat", dataset_ids=[kb.id], llm=llm)
 -     rag.delete_chats(ids=[chat.id])
 - 
 - 
 - def test_list_chats_with_success(get_api_key_fixture):
 -     API_KEY = get_api_key_fixture
 -     rag = RAGFlow(API_KEY, HOST_ADDRESS)
 -     kb = rag.create_dataset(name="test_list_chats")
 -     display_name = "ragflow.txt"
 -     with open("test_data/ragflow.txt", "rb") as file:
 -         blob = file.read()
 -     document = {"display_name": display_name, "blob": blob}
 -     documents = []
 -     documents.append(document)
 -     docs = kb.upload_documents(documents)
 -     for doc in docs:
 -         doc.add_chunk("This is a test to add chunk")
 -     llm = Chat.LLM(
 -         rag,
 -         {
 -             "model_name": "glm-4-flash@ZHIPU-AI",
 -             "temperature": 0.1,
 -             "top_p": 0.3,
 -             "presence_penalty": 0.4,
 -             "frequency_penalty": 0.7,
 -             "max_tokens": 512,
 -         },
 -     )
 -     rag.create_chat("test_list_1", dataset_ids=[kb.id], llm=llm)
 -     rag.create_chat("test_list_2", dataset_ids=[kb.id], llm=llm)
 -     rag.list_chats()
 
 
  |