#!/usr/bin/env python3 # -*- coding: utf-8 -*- """专题三 · 步骤 2:通过 API 把指定 dataset 绑到 Agent 上下文检索。""" from __future__ import annotations import sys import _bootstrap # noqa: F401 import _config as C from dify_api import Dify, pp def main() -> int: d = Dify(C.DIFY_EMAIL, C.DIFY_PASSWORD) try: d.login() r = d.get("/apps/%s/model-config" % C.APP_ID) cfg = r.get("json") or {} if not cfg: print("无法读取 model-config:", r.get("code")) return 1 cfg["dataset_configs"] = { "retrieval_model": { "search_method": "semantic_search", "reranking_enable": False, "top_k": 4, "score_threshold_enabled": False, }, "datasets": [{"id": C.DS_ID}], } out = d.req("POST", "/apps/%s/model-config" % C.APP_ID, body=cfg) pp("bind result", out) return 0 if out.get("code") == "200" else 1 finally: d.close() if __name__ == "__main__": sys.exit(main())