星海智算开发文档
应用开发开发教程

连接真实平台调试

连接真实平台调试:沿用平台当前公开 SDK 合同,区分本地模拟、联网调试与正式运行。

创建 debug_model.py

from jusp_sdk.runtime import RuntimeHttpClient

client = RuntimeHttpClient()  # 自动读取 jusp app dev 注入的短期凭据和公网地址
try:
    services = client.services(serviceKind="vision_chat")
    print("可调用服务:", services)

    # 也可以检查模型、音色和当前公网合同。
    print(client.models())
    print(client.voices())
    print(client.openapi()["openapi"])

    model = services["items"][0]["model"]

    result = client.chat_completions({
        "model": model,
        "messages": [{"role": "user", "content": "用一句话介绍成都"}],
    })
    print(result)
finally:
    client.close()

运行:

jusp app dev --online \
  --app-id <应用ID> \
  --version-id <当前候选版本ID> \
  -- python debug_model.py

浏览器会要求开发者选择本人或已获准测试账号并确认;随后调用真实平台,按所选账号权限、限流、计费和扣积分。SDK 不会把短期令牌写入磁盘。使用他人测试身份需要超管事先在该应用的“测试账号”中授权;不能自行输入任意账号。

SDK 已为联网调试实现服务/模型/音色发现、准入预检、同步模型调用、提示词优化、输入素材上传、异步媒体或文档任务、任务查询、结果读取、组织目录和应用间调用。具体某项能力能否调用,以服务列表和真实响应为准;服务暂不可用时返回受控错误,不伪造成成功。调试会话绑定开发者、所选调用账号、应用和版本,有效期 1 小时;版本、镜像和审核不属于 Runtime 调试链。

用同一段代码测试组织目录

SDK 0.6.4 / CLI 0.1.1 起,在本地入口适配层读取 CLI 会话,不必手动复制 session。保存为 debug_directory.py

from jusp_sdk.runtime import RuntimeClient, RuntimeAPIError

client = RuntimeClient(app_key="my-app")  # 换成你的 appKey
try:
    session = client.resolve_dev_session()
    groups = client.organization_groups(session)
    members = client.organization_members(session, page=1, page_size=20)
    print("分组数:", len(groups), "成员数:", members.total)
except RuntimeAPIError as exc:
    print("请求被拒绝:", exc.status_code)  # 普通成员 403;失效会话 401
except ValueError:
    print("当前身份没有组织,不能读取组织目录")
finally:
    client.close()
jusp app dev --local --app-key my-app -- python debug_directory.py
jusp app dev --local --app-key my-app --scenario organization_member -- python debug_directory.py
jusp app dev --online --app-id <应用ID> --version-id <版本ID> -- python debug_directory.py

联网时选择获准的组织管理员,目录读取应成功;选择普通成员应被拒绝。这不是“模拟管理员”:使用的是专用测试账号当前的真实权限。移除其测试授权后,旧调试凭据的后续请求失败,重新加入名单也不会复活旧会话。

完整 Web 应用只在开发环境的认证适配层调用 resolve_dev_session(),业务代码仍接收同一个 RuntimeSession。生产环境使用 resolve_request(cookies=...),该方法不会读取调试变量;不要把调试模式写入发布镜像。


返回应用开发 · 下一步:接入用户运行会话

本页目录