45 lines
1.7 KiB
Plaintext
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)) |