- 博客(32)
- 收藏
- 关注
原创 LangChain Memory 使用示例
本文介绍了如何使用LangChain和Streamlit搭建一个简易AI聊天助手。主要内容包括:1)创建项目并安装所需依赖;2)编写核心功能代码,使用ConversationChain实现对话记忆功能;3)通过Streamlit构建Web界面,包含API密钥输入和聊天交互区域。项目实现了类似ChatGPT的基本对话功能,支持连续对话上下文记忆。文章还指出当前模型仅使用预训练知识库的局限性,为后续探讨接入私有知识库留下伏笔。
2025-11-15 22:07:49
726
原创 LangChain Memory
本文介绍了如何使用LangChain的ConversationBufferMemory API实现对话记忆功能。通过初始化memory对象存储历史对话,使用save_context()方法保存对话内容,并结合ChatPromptTemplate和MessagesPlaceholder将历史对话注入到提示模板中。演示代码展示了如何通过加载历史对话实现连续问答,使AI能记住用户姓名和职业等上下文信息,并能准确回顾上一个问题。这种方法模拟了类似ChatGPT的上下文记忆能力,解决了传统一次性交互的局限性。
2025-11-15 21:19:26
966
原创 LangChain Model I/O 使用示例
本文介绍了如何开发一个视频脚本生成器应用。项目基于Python环境(Anaconda v25.5.1,Python 3.13.9)和LangChain框架(v1.0.3),使用Streamlit构建界面。核心功能包括:通过OpenAI API生成视频标题和脚本,并结合Wikipedia搜索结果丰富内容。用户可输入视频主题、时长、调整创造力参数(0-1),系统将根据这些条件生成结构完整的视频脚本(包含开头、中间和结尾)。实现步骤包括:创建项目目录、安装依赖项(langchain-openai、wikipedi
2025-11-13 22:46:16
1206
原创 LangChain Model IO
本节我们介绍了 LangChain 框架中的模型、提示模板、输出解析器以及链,每一个知识点都用了一个小示例来做简单介绍,大家对其有一个基础的认识即可。
2025-11-13 00:11:28
822
原创 LangChain 介绍
本文介绍了LangChain框架及其核心组件,包括模型、记忆、链、检索器和Agent,它们能简化AI应用开发。与OpenAI的Assistant API相比,LangChain更灵活、开源且支持多种模型,适合构建复杂AI系统。文章还提供了安装方法,并预告后续将深入讲解各组件功能。通过对比分析,帮助开发者理解两种工具的区别和应用场景。
2025-11-11 06:10:09
504
原创 OpenAI 大模型 API 使用示例
摘要: 本文展示了三个AI文本处理的应用示例:1) 产品评价总结:自动提取用户评价中的优缺点,生成Markdown格式的列表;2) 文案生成:根据关键词生成小红书风格的爆款标题和正文;3) 问题分类:将客户咨询自动归类到预定义类别中。每个示例都包含完整的Python实现代码和OpenAI API调用方法,展示了从简单的文本总结到复杂的分类任务的不同AI应用场景。这些示例可以作为模板,帮助开发者快速实现类似的AI文本处理功能。
2025-11-05 22:39:42
1062
原创 提示词工程
本文介绍了提示工程的核心概念和应用技巧。主要内容包括:1) 提示工程的核心是优化与AI的沟通质量,OpenAI官方建议使用最新模型、清晰分隔指令、提供详细要求和示例等7条规范;2) 限定JSON等输出格式可以提高数据处理效率;3) 零样本和小样本提示的区别与应用场景,小样本通过示范示例可以引导AI输出更符合预期的结果;4) 思维链和分步骤思考技术能有效提升AI在数学计算等复杂问题中的准确性。最后指出后续将通过实际示例进一步介绍OpenAI API的调用方法。
2025-11-04 22:34:02
794
原创 发送对 OpenAI 大模型的第一个请求
OpenAI API使用指南摘要 本文详细介绍了OpenAI API的使用流程:1) 在OpenAI官网创建API密钥并安全保存;2) 通过环境变量配置密钥(Windows系统变量或Mac的.zshrc文件);3) 安装openai库并发送首个API请求,代码示例展示如何调用GPT-4o-mini模型获取回答;4) 使用tiktoken库计算文本token数量以估算成本;5) 关键参数说明,包括max_tokens控制回答长度、temperature/top_p调节回答随机性、frequency_penal
2025-11-03 23:09:04
711
原创 Cesium 实现聚合功能
本文介绍了在Vue 3.5.13和Cesium 1.127.0环境下实现地图元素聚合展示的方法。主要通过Cesium的datasource.clustering属性实现,关键步骤包括:创建自定义数据源、添加地图元素(从GeoJSON文件获取)、设置聚类参数(启用聚类、设置像素范围和最小聚类大小)以及自定义聚类样式。代码中还包含清除所有图层的功能,通过viewer.dataSources.remove()方法实现。该方案可以帮助用户在地图上更清晰地查看高密度区域的元素分布情况。
2025-10-30 22:03:07
283
原创 如何将 Python 程序完整的分享给其他人
本文介绍了如何分享Python程序及相关依赖的方法。首先在PyCharm或Anaconda环境中创建虚拟环境并安装所需库,然后通过pip freeze > requirements.txt或conda env export > environment.yml命令导出依赖信息。接着将程序文件和依赖文件打包,可通过GitHub、压缩包或邮件等方式分享。接收方只需运行pip install -r requirements.txt或conda env create -f environment.yml即
2025-10-30 19:03:51
620
原创 Windows 安装 Anaconda 并配置 PyCharm 环境
本文介绍了在Windows系统下安装Anaconda及配置PyCharm环境的完整流程。首先从官网下载Anaconda并完成安装,需手动添加环境变量。随后在Anaconda中创建Python环境,再下载安装PyCharm。在PyCharm中新建项目时选择conda解释器,并关联之前创建的Python环境。文章提供了详细的图文操作指引,包括关键步骤截图,帮助用户顺利完成环境配置。
2025-10-30 15:00:09
842
原创 Mac 安装 Anaconda 并配置 PyCharm 环境
本文介绍了安装Anaconda及配置PyCharm环境的简单步骤:首先从官网下载Anaconda并安装,完成后创建最新版Python环境;随后下载PyCharm,新建项目时选择"基础conda"解释器类型,并在设置中添加之前创建的Python环境作为本地解释器。整个过程无需特殊注意事项,安装完成后即可在PyCharm中使用配置好的Python环境进行开发。
2025-10-29 05:54:34
235
原创 Cesium 实现地图打印功能
摘要:本文介绍了如何在Vue 3和Cesium环境下实现地图打印功能,支持A4/A3纸张的横向/纵向打印选项。解决方案包括:1)开发前端界面,提供尺寸选择、图片保存和打印按钮;2)实现截图功能,根据选择的纸张尺寸调整画布比例;3)分别开发图片保存和打印功能,打印时通过新窗口加载并设置正确的页面尺寸。代码展示了完整的实现过程,包括尺寸定义、画布截图处理以及打印窗口的样式控制。
2025-10-27 21:28:12
279
原创 Cesium 实现地图视角标签功能
本文介绍了在Vue3+Cesium环境下实现地图书签功能的方法。通过前端界面设计,用户可以保存当前地图状态(包括位置、视角和截图),并支持书签预览和恢复。关键实现步骤包括:1) 使用canvas截图保存地图快照;2) 记录相机位置和视角参数;3) 通过flyTo动画实现书签恢复;4) 提供书签管理和删除功能。该方案采用响应式设计,界面简洁直观,核心功能包括截图保存、位置恢复和书签管理,适用于需要保存地图视图状态的GIS应用场景。
2025-10-27 21:25:48
414
原创 Cesium 实现地图标记功能
摘要 本文介绍了基于Vue 3.5.13和Cesium 1.127.0开发的地图标记管理功能实现。主要功能包括:从JSON文件导入标记数据、手动添加标记、下载标记数据及清除标记。前端界面采用Ant Design组件,提供直观的交互操作。核心实现包括:1) 使用Cesium的ScreenSpaceEventHandler处理地图点击事件;2) 通过Entity API添加标记点和标签;3) 实现标记数据的导入/导出功能。系统还支持标记点的编辑、删除和锁定操作,提供完整的标记管理解决方案。
2025-10-27 21:21:21
363
原创 Cesium 实现行政区划导航功能
本文介绍了在Vue 3和Cesium环境下实现行政区划地图导航与高亮功能的方法。首先需要下载并处理省市级行政区划数据,构建适合前端展示的数据结构。然后开发交互界面,通过点击省/市名称触发地图跳转和边界高亮。核心功能包括:1)使用GeoJsonDataSource加载并高亮显示行政区边界;2)实现地图视角自动导航至选中区域;3)组件卸载时清理地图标记。该方案通过合理组织数据结构和Vue组件生命周期管理,实现了流畅的行政区划浏览体验。
2025-10-27 21:14:04
220
原创 Cesium 实现坐标定位功能
本文介绍了在Vue3和Cesium环境下实现坐标定位功能的解决方案。通过输入经纬度和高程数据,点击按钮后在地图上标记点位并跳转视图。主要内容包括:1)前端界面开发,使用输入框和按钮组件;2)实现坐标定位功能,包括添加点位实体和视图跳转;3)开发重置功能,清除标记并恢复初始视图。代码展示了如何利用Cesium的API进行地图操作,包括entity添加、相机控制和视图跳转等核心功能。
2025-10-27 21:03:56
219
原创 Cesium 实现比例尺功能
摘要 本文介绍了在Vue 3.5.13和Cesium 1.127.0环境下实现地图比例尺功能的方法。通过计算屏幕像素与真实距离的对应关系,动态调整比例尺的显示长度和单位(米或千米)。组件采用响应式设计,在每帧渲染时更新比例尺,确保在不同缩放级别下都能显示合适的比例。实现过程包括获取地图中心点距离、动态计算最优比例长度、设置比例尺文本和样式等核心功能。组件通过TailwindCSS设置基础样式,并添加到Cesium地图的postRender事件中实现实时更新。
2025-10-24 21:46:31
593
原创 Cesium 实现回到初始视角、二三维切换、全屏、缩放功能
本文介绍了基于Vue3和Cesium实现地图操作功能的方法,包括回到初始视角、二/三维切换、全屏显示和缩放控制。通过封装Cesium API实现了这些核心功能,并提供了完整的代码示例。此外,还展示了如何自定义开发类似Cesium原生帮助控件的交互指引组件,支持鼠标和触摸两种操作模式的说明切换,包含详细的图标和文字说明。该方案可帮助开发者快速构建具有基本地图操作功能的应用界面。
2025-10-24 21:43:41
284
原创 Cesium 实现坐标测量
本文介绍了在Vue3 + Cesium项目中实现坐标测量功能的方法。通过创建屏幕空间事件处理器,在鼠标左键点击时获取模型的笛卡尔坐标或地形坐标,并转换为经纬度高度信息。代码提供了创建测量点、添加坐标标注框的功能实现,以及清除测量结果的工具方法。测量结果包括经度、纬度和高程信息,以标注框形式显示在场景中。该方案支持拾取模型和地形两种场景,并提供了完整的测量点创建、坐标转换和结果清除功能。
2025-10-24 21:39:56
155
原创 Cesium 实现空间距离测量
Vue3与Cesium实现距离测量功能 摘要: 本文介绍了在Vue3项目中使用Cesium库实现距离测量功能的方法。通过监听鼠标点击事件,利用Cesium.Cartesian3.distance()API计算两点间距离,并实时绘制测量线和标注点。主要功能包括:1) 计算空间距离并保留两位小数;2) 绘制测量点和距离标签;3) 动态绘制测量线段;4) 支持双击结束测量。代码提供了完整的测量流程实现,包括事件处理、图形绘制和结果清除功能,可直接集成到Vue3+Cesium的项目中。
2025-10-24 21:36:18
531
原创 Cesium 实现水平面积测量
本文介绍了在Vue 3.5.13和Cesium 1.127.0环境下实现面积测量功能的方法。通过组合使用Cesium API,实现了多边形面积测量功能,包括计算两点朝向、三点夹角、两点距离等核心算法。文章详细展示了如何计算多边形面积,并提供了绘制点、多边形和标签的实用函数。主要实现步骤包括:1) 计算两点朝向角度;2) 计算三个点连线夹角;3) 计算两点距离;4) 将多边形拆分为三角形计算总面积;5) 在场景中添加测量结果标签。该解决方案可直接集成到项目中,实现类似示例图中的面积测量效果。
2025-10-24 15:53:43
169
原创 修改 Cesium 地图主题色改进版
本文介绍了一种通过Cesium的PostProcessStage(后处理阶段)API实现地图主题色修改的方法,相比直接修改内部shader更稳定可靠。文章提供了完整的TypeScript代码实现,包含亮度、对比度、伽马值、色调、饱和度、反色和RGB滤色等可配置参数,并给出了效果示例图。该方法通过官方API接口实现,避免了后期更新可能导致的兼容性问题,为Cesium地图主题定制提供了更规范的解决方案。
2025-10-23 10:20:45
244
原创 修改 Cesium 地图主题色
本文介绍了如何在Cesium中实现蓝色科技风格的地图主题调整。通过修改底图图层的亮度、对比度、伽马值、色调、饱和度等参数,以及访问并修改Cesium内部着色器源码中的饱和度处理逻辑,可以动态改变地图视觉效果。文中提供了完整的代码实现,包括一个setViewerTheme函数,该函数接收包含各种颜色调整参数的对象,并支持反色和RGB滤镜功能。开发者可以根据项目实际需求调整这些参数值,使地图风格与系统整体设计风格保持一致。这种方法突破了传统地图颜色在制图时即已固定的限制,实现了更灵活的地图主题定制。
2025-10-23 06:37:43
206
原创 隐藏 Cesium 地图场景控件
本文介绍了在Vue3项目中初始化Cesium地图时如何隐藏默认控件的方法。通过设置Viewer初始化参数,将timeline、animation、geocoder等选项设为false可以关闭对应控件。此外,还需通过代码隐藏版权信息、关闭鼠标惯性效果、移除默认点击事件,并添加CSS样式隐藏focus相机信息框。这些设置能帮助开发者获得一个纯净的Cesium地图场景。文章提供了完整的代码示例和效果对比图。
2025-10-23 06:32:52
563
原创 Docker 安装 PostgreSQL 数据库
本文介绍了在CentOS 7.6服务器上使用Docker部署PostgreSQL 14.4的详细步骤。首先拉取镜像并创建挂载目录,然后运行容器并设置密码、端口映射和数据卷挂载。接着配置pg_hba.conf文件实现远程连接,最后测试验证连接成功。整个过程涵盖了从镜像下载到容器运行、远程访问配置的完整流程,为在Docker环境中部署PostgreSQL数据库提供了清晰的操作指南。
2025-10-19 21:44:43
186
原创 Docker 安装 Nginx
本文介绍了在CentOS 7.6服务器上使用Docker安装Nginx的详细步骤:首先从Docker Hub拉取Nginx镜像,然后创建挂载目录。为避免配置文件被覆盖,先启动无挂载容器,从中复制出配置文件到宿主机后删除容器。最后重新启动带挂载目录的容器,实现Nginx配置文件和网站目录的持久化存储。文章还提供了修改配置后重启容器的注意事项,为后续项目部署奠定了基础。
2025-10-16 21:59:41
236
原创 docker search mysql 报错
云服务器安装Docker后执行docker search mysql报错超时,问题分析显示Docker Hub API访问受限。解决方法:1)直接使用docker pull命令拉取镜像,腾讯云镜像加速器可加速拉取;2)通过国内镜像站(如GitHub上的DockerHub加速列表)搜索镜像后再拉取。注意镜像源配置仅加速拉取,不支持docker search功能。
2025-10-12 11:12:57
980
原创 CentOS 7.6 安装 Docker、Docker Compose
本文介绍了在CentOS 7.6云服务器上安装Docker和Docker Compose的完整步骤。首先通过yum更新系统并安装必要软件包,然后配置阿里云镜像源安装Docker CE。接着设置国内Docker镜像库并配置开机自启。最后下载Docker Compose并添加执行权限。所有安装过程均采用国内镜像源加速,解决了GitHub下载慢的问题。完成安装后,可通过docker info和docker compose version命令验证安装结果,为后续基于Docker的应用部署做好准备。
2025-10-12 05:30:20
642
原创 Ant Design Vue 中 Tooltip 组件导致界面抖动问题
Ant Design Vue 的 Tooltip 组件首次 hover 时出现界面抖动,主要原因是工具提示首次渲染需要动态计算尺寸和位置。解决方案包括:1) 提前渲染隐藏的 Tooltip 预热(推荐);2) 禁用动画效果;3) 设置固定宽度。最佳实践是组合使用这些方法,特别是将 destroyTooltipOnHide 设为 false 并在页面加载时预渲染一个隐藏的 Tooltip。这些方案可以有效消除首次出现的视觉抖动问题,其中预渲染方案效果最好。
2025-06-27 06:50:11
918
1
原创 GeoServer 安装(windows 环境)
安装之前要去 Geoserver 官网查看与之搭配的 jdk 版本安装过程中建议修改默认端口号安装后如果发现无法访问,记得手动启动。
2025-04-24 06:51:18
2248
原创 Vue3 中使用 Cesium 初始化地图场景
有了 Vue3 项目之后就可以在项目中引入 Cesium 来初始化地图场景了。前者使我们开发地图场景的核心地图库,后者是这个地图库在 vite 项目中使用时要安装的一个 plugin 插件。在项目根目录下的 public 目录中新建 libs 文件夹,然后将 node_modules/cesium/Build 目录下的 Cesium 文件夹拷贝至新建的 libs 文件夹内。以上代码中 div 的样式需要自己在 style 标签中设置一下,因为目前本人喜欢用 tailwindcss,所以就用了这种写法。
2025-04-16 23:31:34
870
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅