2026-04-16 15:40:17 +08:00

45 lines
1.7 KiB
Plaintext

"""
Hermes Agent Main Entry Point
Handles the main 'Hermes' command functionality with llmage integration
"""
from harnessed_agent.harnessed_agent import HermesAgent
async def main():
"""
Main entry point for Hermes command
Supports all 7 standardized multimodal AI functions through llmage integration:
- local_llm_inference (文生文)
- local_vision_inference (图理解)
- local_image_generation (文生图)
- local_tts_inference (语音合成)
- local_asr_inference (语音识别)
- local_video_generation (文生视频)
- local_image_to_video (图生视频)
"""
agent = HermesAgent(request=request)
# Get command and parameters from request
command = params_kw.get('command', 'chat')
user_id = await get_user()
params = {
'user_id': user_id,
'message': params_kw.get('message', ''),
'session_id': params_kw.get('session_id'),
'tool_name': params_kw.get('tool_name'),
'tool_params': params_kw.get('tool_params', {}),
'skill_name': params_kw.get('skill_name'),
'skill_params': params_kw.get('skill_params', {}),
'query_type': params_kw.get('query_type', 'user'),
'key': params_kw.get('key'),
'model': params_kw.get('model', 'qwen3-max'),
'stream': params_kw.get('stream', True),
'prompt': params_kw.get('prompt', ''),
'image': params_kw.get('image', ''), # For vision/image generation
'audio': params_kw.get('audio', ''), # For TTS/ASR
'video': params_kw.get('video', ''), # For video generation
# All other llmage parameters are passed through directly
}
# Execute command and return streaming response
return StreamResponse(agent.execute_command(command, params))