| """Test script to run the research agent with detailed debugging.""" |
|
|
| from agent import agent |
|
|
| query = "设计一个50个基因的面板,用于人类前列腺癌模型,捕获肿瘤状态、免疫过程和组织上下文。" |
|
|
| print("=== Starting agent invocation ===") |
| print(f"Query: {query}") |
| print() |
|
|
| result = agent.invoke( |
| { |
| "messages": [ |
| { |
| "role": "user", |
| "content": query, |
| } |
| ], |
| }, |
| ) |
|
|
| print("=== Result ===") |
| print("Result keys:", list(result.keys())) |
|
|
| if "files" in result: |
| print("Files:", list(result["files"].keys())) |
| else: |
| print("No 'files' in result") |
|
|
| print() |
| print("=== Messages ===") |
| if "messages" in result: |
| for i, msg in enumerate(result["messages"]): |
| role = msg.role if hasattr(msg, 'role') else "unknown" |
| content = msg.content if hasattr(msg, 'content') else "" |
| tool_calls = getattr(msg, 'tool_calls', []) |
| tool_call_id = getattr(msg, 'tool_call_id', None) |
| |
| print(f"\n--- Message {i}: role={role} ---") |
| if tool_calls: |
| print(f"Tool calls ({len(tool_calls)}):") |
| for tc in tool_calls: |
| tc_name = getattr(tc, 'name', 'unknown') |
| tc_args = getattr(tc, 'args', {}) |
| print(f" - {tc_name}: {tc_args}") |
| if tool_call_id: |
| print(f"Tool call ID: {tool_call_id}") |
| if isinstance(content, str): |
| if len(content) > 1500: |
| print(f"Content (first 1500 chars): {content[:1500]}...") |
| else: |
| print(f"Content: {content}") |
| else: |
| print(f"Content type: {type(content)}") |
| print(f"Content repr: {repr(content)[:500]}") |