import volcenginesdkcore
from volcenginesdkcore.rest import ApiException
if __name__ == '__main__':
ak = os.environ.get("VOLC_ACCESSKEY")
sk = os.environ.get("VOLC_SECRETKEY")
configuration = volcenginesdkcore.Configuration()
configuration.region = "cn-beijing"
api_instance = volcenginesdkcore.UniversalApi(
volcenginesdkcore.ApiClient(configuration)
user_prompt = "打开浏览器并搜索火山引擎"
novnc_body["Ecsid"] = ecs_id
raise ValueError("Id 和 Ecsid 需要二选一传入,不能都为空")
novnc_resp = api_instance.do_call(
volcenginesdkcore.UniversalInfo(
action="CreateCuaNodeNoVNCSession",
content_type="application/json"
volcenginesdkcore.Flatten(novnc_body).flat()
print("\nCreateCuaNodeNoVNCSession response:")
novnc_result = novnc_resp.get("Result", novnc_resp)
print("ViewerUrl :", novnc_result.get("ViewerUrl"))
print("WebsocketUrl:", novnc_result.get("WebsocketUrl"))
print("ExpiresAt :", novnc_result.get("ExpiresAt"))
run_body = volcenginesdkcore.Flatten({
"RunName": "computer-use 测试 demo",
"ThreadId": str(uuid.uuid4()),
"UserPrompt": user_prompt,
"TosBucket": tos_bucket,
"TosEndpoint": tos_endpoint,
run_resp = api_instance.do_call(
volcenginesdkcore.UniversalInfo(
action="RunAgentTaskOneStep",
content_type="application/json"
print("\nRunAgentTaskOneStep response:")
run_info = run_resp.get("Result", run_resp)
run_id = run_info["RunId"]
print("\nRunId:", run_id)
step_resp = api_instance.do_call(
volcenginesdkcore.UniversalInfo(
action="ListAgentRunCurrentStep",
content_type="application/json"
volcenginesdkcore.Flatten({"RunId": run_id}).flat()
print("\nListAgentRunCurrentStep response:")
step_info = step_resp.get("Result", step_resp)
if step_info.get("Status") in [3, 5, 6, 7]:
print("\n任务已结束,最终状态:", step_info.get("Status"))
result_resp = api_instance.do_call(
volcenginesdkcore.UniversalInfo(
action="GetAgentResult",
content_type="application/json"
volcenginesdkcore.Flatten({"RunId": run_id}).flat()
print("\nGetAgentResult response:")
except ApiException as e:
print(f"API Exception: {e}")
print(f"General Exception: {e}")