116 lines
3.4 KiB
Python
116 lines
3.4 KiB
Python
#!/usr/bin/env python
|
|
"""
|
|
测试 MinerU 异步上下文修复
|
|
"""
|
|
|
|
import os
|
|
import sys
|
|
import asyncio
|
|
import django
|
|
|
|
# 设置 Django 环境
|
|
sys.path.append(os.path.dirname(os.path.abspath(__file__)))
|
|
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'smartdoc.settings')
|
|
django.setup()
|
|
|
|
from apps.common.handle.impl.mineru.maxkb_adapter.maxkb_model_client import maxkb_model_client
|
|
|
|
|
|
async def test_async_model_calls():
|
|
"""测试异步模型调用"""
|
|
print("测试异步模型调用...")
|
|
|
|
# 测试获取 LLM 模型
|
|
try:
|
|
print("\n1. 测试获取 LLM 模型...")
|
|
llm_model = await maxkb_model_client.get_llm_model("0198cbd9-c1a6-7b13-b16d-d85ad77ac03d")
|
|
if llm_model:
|
|
print(" ✓ LLM 模型获取成功")
|
|
else:
|
|
print(" ✗ LLM 模型获取失败")
|
|
except Exception as e:
|
|
print(f" ✗ LLM 模型获取出错: {e}")
|
|
|
|
# 测试获取视觉模型
|
|
try:
|
|
print("\n2. 测试获取视觉模型...")
|
|
vision_model = await maxkb_model_client.get_vision_model("0198cbd9-c1a6-7b13-b16d-d85ad77ac03d")
|
|
if vision_model:
|
|
print(" ✓ 视觉模型获取成功")
|
|
else:
|
|
print(" ✗ 视觉模型获取失败")
|
|
except Exception as e:
|
|
print(f" ✗ 视觉模型获取出错: {e}")
|
|
|
|
# 测试聊天完成
|
|
try:
|
|
print("\n3. 测试聊天完成...")
|
|
messages = [
|
|
{"role": "system", "content": "You are a helpful assistant."},
|
|
{"role": "user", "content": "Hello, this is a test."}
|
|
]
|
|
response = await maxkb_model_client.chat_completion(
|
|
"0198cbd9-c1a6-7b13-b16d-d85ad77ac03d",
|
|
messages
|
|
)
|
|
if response:
|
|
print(f" ✓ 聊天完成成功: {response[:100]}...")
|
|
else:
|
|
print(" ✗ 聊天完成返回空响应")
|
|
except Exception as e:
|
|
print(f" ✗ 聊天完成出错: {e}")
|
|
|
|
# 测试模型验证
|
|
try:
|
|
print("\n4. 测试模型验证...")
|
|
is_valid = await maxkb_model_client.validate_model("0198cbd9-c1a6-7b13-b16d-d85ad77ac03d")
|
|
if is_valid:
|
|
print(" ✓ 模型验证成功")
|
|
else:
|
|
print(" ✗ 模型不存在或无效")
|
|
except Exception as e:
|
|
print(f" ✗ 模型验证出错: {e}")
|
|
|
|
print("\n测试完成!")
|
|
|
|
|
|
async def test_mineru_image_processing():
|
|
"""测试 MinerU 图像处理流程"""
|
|
print("\n测试 MinerU 图像处理流程...")
|
|
|
|
from apps.common.handle.impl.mineru.config_base import MinerUConfig
|
|
from apps.common.handle.impl.mineru.image_processor import MinerUImageProcessor
|
|
|
|
# 创建配置
|
|
config = MinerUConfig()
|
|
|
|
# 创建图像处理器
|
|
processor = MinerUImageProcessor(config)
|
|
await processor.initialize()
|
|
|
|
print("✓ 图像处理器初始化成功")
|
|
|
|
# 清理资源
|
|
await processor.cleanup()
|
|
print("✓ 图像处理器清理成功")
|
|
|
|
|
|
async def main():
|
|
"""主测试函数"""
|
|
print("=" * 60)
|
|
print("MinerU 异步上下文修复测试")
|
|
print("=" * 60)
|
|
|
|
# 测试异步模型调用
|
|
await test_async_model_calls()
|
|
|
|
# 测试图像处理流程
|
|
await test_mineru_image_processing()
|
|
|
|
print("\n" + "=" * 60)
|
|
print("所有测试完成!")
|
|
print("=" * 60)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
asyncio.run(main()) |