Windows下调试Dify相关组件(2)--后端Api

1.部署依赖的服务(代码最外层的docker目录)

1.1 将middleware.env.example复制,并改名为middleware.env。

1.2 查看docker-compose.middleware.yaml,有5个服务

      db:postgres数据库。

      redis:redis缓存。

      sandbox:沙盒,组件运行环境。

      ssrf_proxy: 防服务端请求伪造(SSRF,server-side request forgery)攻击代理。

      weaviate:向量数据库,没用到知识库可以暂时删掉。

1.3 启动 Docker Desktop

1.4 cmd命令行切到docker目录,运行命令

docker-compose -f docker-compose.middleware.yaml up -d

   正常完成后 docker ps命令可以查看运行的容器:

2. 安装poetry

2.1 要求python版本须是3.11或3.12,建议3.12。已安装python 3.12.2,系统识别python命令。

2.2 Powershell 执行

(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py -

 或cmd命令行 (如系统配置的是python3命令,请将后面的python改为python3):

curl -sSL https://install.python-poetry.org | python -

 参考官网:Introduction | Documentation | Poetry - Python dependency management and packaging made easy (python-poetry.org)

2.3 安装完成后,将安装路径加入到系统环境变量Path中,查看版本,目前是2.0.0:

poetry --version
3. Api服务(代码最外层的api目录)

1.1 将.env.example复制,并改名为.env。

1.2 随便设置.env文件里的SECRET_KEY,也可以在Linux下运行下面命令去生成key:

openssl rand -base64 42

1.3 PyCharm 打开api目录,设置Poetry虚拟环境的解释器

终端运行命令 poetry env info 可以查看python环境情况。

1.4 安装依赖包

poetry install

如果提示 pyproject.toml changed significantly since poetry.lock was last generated. Run `poetry lock` to fix the lock file. 则先运行下面命令:

poetry lock

1.5 同步数据库表

poetry run python -m flask db upgrade

1.6 配置启动如图所示,然后可以调试了

1.7 遇到的问题

一开始用的Python3.11+PyCharm社区2023,调试的时候出现下面警告

sys.settrace() should not be used when the debugger is being used. This may cause the debugger to stop working correctly.

然后能到达断点,但调试不了,原因不明。

后改用Python3.12+PyCharm社区2024就好了。

1.8 结束

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/67010.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CSS | CSS实现两栏布局(左边定宽 右边自适应,左右成比自适应)

目录 一、左边定宽 右边自适应 1.浮动 2.利用浮动margin 3.定位margin 4.flex布局 5.table 布局 二、左右成比自适应 1:1 1flex布局 table布局 1:2 flex布局 <div class"father"><div class"left">左边自适应</div><div class"r…

Spring Framework 5.3.x源码构建 (jdk-1.8, gradle 7.5.1, idea2024.3)

1、下载jdk安装并配置环境变量&#xff08;自行百度&#xff09; https://www.oracle.com/java/technologies/downloads/#java8 2、下载spring-framework源码&#xff0c;切换分支到5.3.x https://github.com/spring-projects/spring-framework.git 备用地址 https://gitco…

【AI日记】25.01.12

【AI论文解读】【AI知识点】【AI小项目】【AI战略思考】【AI日记】【读书与思考】 AI kaggle 比赛&#xff1a;Forecasting Sticker Sales 读书 书名&#xff1a;国家为什么会失败阅读原因&#xff1a;2024 年诺贝尔经济学奖得主的力作未删减版&#xff1a;https://book.dou…

合洁科技电子洁净工程公司分享晶圆厂百级净化车间建设的关键要点

电子厂百级净化车间的设计装修是一个复杂而精细的过程&#xff0c;它直接关系到电子产品的生产质量、员工的健康安全以及生产环境的稳定性。为了满足高洁净度、低污染的生产要求&#xff0c;设计装修过程中需要综合考虑多个方面的因素。以下是合洁科技电子净化工程公司对电子厂…

VUE3 监听器(watch)

在 Vue 3 中&#xff0c;监听器&#xff08;watch&#xff09;是用来观察响应式数据的变化&#xff0c;并在数据发生变化时执行相应操作的机制。watch 主要用于响应式数据变化时的副作用处理&#xff0c;比如异步操作、数据更新等。 1. 基础使用 在 Vue 3 中&#xff0c;watc…

CentOS7下Spark-2.4.3-bin-without-hadoop版本安装详细图文教程

1、该Spark版本说明 1、依赖关系 该版本不包含Hadoop的依赖库。适用于那些不直接需要Hadoop集群或者已经通过其他方式管理Hadoop依赖的用户。用户可以在不依赖Hadoop的环境中运行Spark&#xff0c;或者如果已有一个Hadoop环境但希望使用Spark自带的Hadoop客户端库&#xff0c;…

论文解析 | 基于语言模型的自主代理调查

论文 《A Survey on Large Language Model-based Autonomous Agents》 对基于大型语言模型&#xff08;LLM&#xff09;的自主智能体&#xff08;Autonomous Agents&#xff09;进行了全面调查。随着大型语言模型&#xff08;如 GPT 系列、BERT、T5 等&#xff09;的快速发展&a…

VSCode MAC CPP运行环境配置

使用vscode运行cpp确实挺麻烦的&#xff0c;需要配置几个文件&#xff0c;简单来说&#xff1a; c_cpp_properties.json 用来配置编译器和编译选项launch.json 用来配置运行时选项tasks.json 用来配置debug选项 .vscode/c_cpp_properties.json {"configurations":…

【DB-GPT】开启数据库交互新篇章的技术探索与实践

一、引言&#xff1a;AI原生数据应用开发的挑战与机遇 在数字化转型的浪潮中&#xff0c;企业对于智能化应用的需求日益增长。然而&#xff0c;传统的数据应用开发方式面临着诸多挑战&#xff0c;如技术栈复杂、开发周期长、成本高昂、难以维护等。这些问题限制了智能化应用的…

网络安全 | 什么是CC攻击防护?

关注&#xff1a;CodingTechWork CC攻击的介绍 CC攻击&#xff08;Challenge Collapsar Attack&#xff09;是一种针对Web应用程序的攻击方式&#xff0c;通常被称为“网站的拒绝服务攻击”&#xff08;DDoS&#xff09;&#xff0c;主要通过大量伪造的HTTP请求来消耗服务器资…

docker run一个镜像如何指定最大可使用的内存大小、cpu大小

在 Docker 中&#xff0c;你可以通过 --memory 和 --cpus 参数来指定容器的最大内存和 CPU 限制。这样可以确保容器不会超出特定的资源限制&#xff0c;从而避免影响主机的其他进程。 1. 限制内存&#xff08;--memory&#xff09; 通过 --memory 或 -m 参数&#xff0c;你可…

centos9设置静态ip

CentOS 9 默认使用 NetworkManager 管理网络&#xff0c;而nmcli是 NetworkManager 命令行接口的缩写&#xff0c;是一个用来进行网络配置、管理网络连接的命令工具&#xff0c;可以简化网络设置&#xff0c;尤其是在无头&#xff08;没有图形界面&#xff09;环境下。 1、 cd…

单片机(MCU)-简单认识

简介&#xff1a; 内部集成了CPU&#xff0c;RAM&#xff0c;ROM&#xff0c;定时器&#xff0c;中断系统&#xff0c;通讯接口等一系列电脑的常用硬件功能。 单片机的任务是信息采集&#xff08;依靠传感器&#xff09;&#xff0c;处理&#xff08;依靠CPU&#xff09;&…

Linux之读者写者模型与特殊锁的学习

目录 读者写者模型 特殊锁 悲观锁 自旋锁 在前几期&#xff0c;我们学习了多线程的生产者和消费者模型&#xff0c;生产者和消费者模型中&#xff0c;有三种关系&#xff0c;两个角色&#xff0c;一个场所&#xff0c;那么读者写者模型和生产者消费者模型有什么关联吗&…

mycat介绍与操作步骤

文章目录 1.分库分表2.mycat 入门2.1 概述2.2 案例&#xff1a;水平分表1&#xff09;准备工作2&#xff09;配置3&#xff09;启动并测试 3.mycat 配置详解3.1 schema.xml3.2 rule.xml3.3 server.xml 4.mycat 分片&#xff1a;垂直拆分1&#xff09;准备工作2&#xff09;配置…

OSPF - 特殊报文与ospf的机制

&#x1f460;1 携带FA地址的5类LSA 除去7类转5类的LSA会携带FA地址&#xff0c;还有一种情况会有FA地址 FA地址:forwarding address 转发地址&#xff0c;解决次优路径&#xff0c;避免环路5类LSA FA地址不为0&#xff0c;则直接通过FA地址去往目标网段 FA地址为0&#xff0c…

django基于Python的电影推荐系统

Django 基于 Python 的电影推荐系统 一、系统概述 Django 基于 Python 的电影推荐系统是一款利用 Django 框架开发的智能化应用程序&#xff0c;旨在为电影爱好者提供个性化的电影推荐服务。该系统通过收集和分析用户的观影历史、评分数据、电影的属性信息&#xff08;如类型…

C语言基本知识复习浓缩版:控制语句--循环

C语言基本知识复习浓缩版&#xff1a;控制语句--循环 三种基本循环结构 while do-while循环 for循环 while while(条件) { //循环 } 当条件为真时&#xff0c;循环会一直执行 当条件为假时&#xff0c;循环停止 注意点&#xff1a;如果初始条件为假&#xff0c;循环体一次…

初识verilog HDL

为什么选择用Verilog HDL开发FPGA&#xff1f;&#xff1f;&#xff1f; 硬件描述语言&#xff08;Hardware Descriptipon Lagnuage&#xff0c;HDL&#xff09;通过硬件的方式来产生与之对应的真实的硬件电路&#xff0c;最终实现所设计的预期功能&#xff0c;其设计方法与软件…

硬件设计-齐纳管

目录 摘要 详情 齐纳管的工作电流、 摘要 齐纳管&#xff08;Zener Diode&#xff09;是一种特殊的二极管&#xff0c;它能够在特定的反向电压下保持电流稳定。正常情况下&#xff0c;二极管只允许正向电流通过&#xff0c;而阻止反向电流流过。而齐纳管在一定的反向电压下可…