自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(133)
  • 收藏
  • 关注

原创 vLLM学习1

只要理解了。

2025-02-23 23:20:28 1679

原创 deepseek蒸馏

这个 Notebook 主要完成: ✅。

2025-02-20 08:21:43 929

原创 Unsloth微调

构造输入:将系统提示、用户指令和期望回答拼接成一个完整文本,并进行 tokenization,得到input_ids和。构造目标:设置labels,确保模型只在回答部分计算损失(对前面指令部分用 -100 忽略)。数据送入模型训练:通过前向传播、损失计算和反向传播,微调模型参数,使模型能够根据给定的指令生成正确的回答。在这个过程中,input_ids提供了输入的数值表示,告诉模型哪些 token 需要关注,而labels则为训练提供了目标监督信号。

2025-02-18 22:39:57 1439

原创 PPO学习

在 PPO(近端策略优化)微调大模型的流程中,通常会涉及以下四个组件,每个组件都有其特定的角色:通过这四个模型的协同工作,PPO 能够在微调过程中实现既不偏离预训练知识,又能适应特定任务要求的目标,从而提高大模型的实用性和安全性。PPO的核心1.收集数据→2.评估动作好坏→3.安装的微调策略→4.重复目标:训练一个Policy神经网络,在所有状态S下,给出相应的Action,得到Return的期望最大。这个公式推导展示了**策略梯度(Policy Gradient)**的核心思想,即如何通过采样轨迹(Tra

2025-02-18 12:47:41 873

原创 DeepSeek学习

奖励函数部分:代码中实现了三个奖励函数,用来衡量生成回答的正确性和格式是否满足要求。这部分代码调用了 Python 内置的re模块和标准数据结构操作。强化学习框架:虽然文件中没有展示完整的 RL 训练循环,但奖励函数的设计正是为 RL 训练服务的。你可以将这些奖励函数嵌入到如 PPO 这类 RL 算法的训练循环中。常用的库包括 Hugging Face 的 Transformers(生成回答)和 TRL(进行策略更新)。参考实现。

2025-02-18 07:58:14 1051

原创 LoRA微调学习

构造输入:将系统提示、用户指令和期望回答拼接成一个完整文本,并进行 tokenization,得到input_ids和。构造目标:设置labels,确保模型只在回答部分计算损失(对前面指令部分用 -100 忽略)。数据送入模型训练:通过前向传播、损失计算和反向传播,微调模型参数,使模型能够根据给定的指令生成正确的回答。在这个过程中,input_ids提供了输入的数值表示,告诉模型哪些 token 需要关注,而labels则为训练提供了目标监督信号。

2025-02-16 21:44:56 873

原创 PPO学习

基准模型:保持不变,作为原始语言能力的参考。训练模型:根据 PPO 算法被更新,目标是生成高质量且符合奖励标准的文本。奖励模型:为生成的文本提供即时反馈(打分),指导训练模型的更新。状态价值模型:评估当前状态的未来奖励,帮助计算优势,进而指导更稳定、更有效的策略更新。通过这四个模型的协同工作,PPO 能够在微调过程中实现既不偏离预训练知识,又能适应特定任务要求的目标,从而提高大模型的实用性和安全性。PPO的核心1.收集数据→2.评估动作好坏→3.安装的微调策略→4.重复。

2025-02-16 21:44:15 998

原创 pyneo学习

根据现有源码,py2neo 的 ServiceProfile 和 Connector 并没有对timeout参数进行处理,因此在当前版本中直接传入timeout参数并不会生效。如果你需要设置连接或查询超时,建议使用官方 neo4j 驱动,或者在应用层对操作做超时控制。同时,你也可以关注或参与 py2neo 项目的开发,看看未来版本是否会支持更多的超时设置。py2neo 没有内置客户端超时机制在我们使用的 run 方法以及其初始化代码中,并未发现任何对超时(timeout)参数的支持或超时控制逻辑。

2025-02-08 08:00:51 602

原创 pyneo学习

通过观察输出是否有连接失败或超时信息,可以判断是否存在并发连接数的限制问题。

2025-02-07 13:06:14 1068

原创 Redis练习

函数类型:你的代码使用异步函数 (async def),助手的代码使用同步函数 (def对于同步的库,建议使用同步函数。参数传递方式:你的代码通过单独的参数传递,助手的代码使用 Pydantic 模型进行封装,提升了数据验证和代码结构。类型注解:你的代码缺乏类型注解,助手的代码为依赖注入的参数添加了类型注解,增强了代码的可读性和可维护性。附加改进:助手的代码包含错误处理、日志记录和更完善的缓存逻辑,提升了代码的健壮性和可维护性。

2025-01-07 08:01:33 978

原创 SQLAlchemy

SQLAlchemy是一个功能强大的 Python SQL 工具包和对象关系映射(ORM)框架,旨在提供高效、灵活且便于扩展的数据库交互解决方案。它支持多种数据库,并通过其核心(Core)和 ORM 两个层次为开发者提供不同的抽象级别。模型类代表数据库中的表,每个实例代表表中的一行。# 如果有外键关系,可以定义 relationshipAlembic是 SQLAlchemy 的官方数据库迁移工具,允许你轻松地管理数据库模式的变更。它支持生成和应用迁移脚本,确保数据库结构的演进与代码同步。

2025-01-06 07:55:28 671

原创 Git学习

Already up to date.” 但本地代码不是最新。时,如果同一行或同一文件的修改无法自动合并,就会出现。目录下创建或修改对应脚本文件(如。若想保持提交历史更干净,可以采用。),设置执行权限后即可生效。文件中修改相关配置。

2025-01-06 07:54:25 999

原创 manager3

明确职责:不同命名模式(如Manager、Service、DAO等)通常反映了类或模块的职责。确保每个类或模块有单一的职责,符合单一职责原则(SRP)。遵循一致的命名约定:在整个项目中保持命名的一致性,这有助于团队成员快速理解代码结构和功能。使用描述性命名:类名、方法名和变量名应清晰描述其用途,避免使用过于简短或模糊的名称。理解设计模式:许多命名模式与设计模式相关联,如MVC(模型-视图-控制器)、服务层模式、数据访问层等。理解这些设计模式有助于更好地应用和扩展命名模式。参考成熟项目。

2025-01-04 07:45:40 994

原创 后端项目架构

配置文件:管理项目的配置和依赖。源代码:包含业务逻辑、API 接口、数据库模型等。测试代码:确保代码质量和功能正确性。文档:提供项目的使用说明、开发指南等。工具和脚本:用于自动化任务、部署脚本等。在models/目录中定义数据库模型,确保模型与数据库表的映射清晰。设计一个良好的 Python 后端工程结构需要综合考虑项目的规模、复杂性、团队协作以及未来的可扩展性。分层架构:将项目分为不同的层次,如 API 层、业务逻辑层、数据访问层,确保职责分离。模块化。

2025-01-02 13:29:53 1031

原创 Graph学习

commonnode.py这段代码使用了 Python 的 enum 模块和 pydantic 库来定义一组用于描述节点(可能用于工作流、图形化编程或其他类似系统)的数据模型。下面我将逐步解释代码的各个部分及其作用。导入模块from enum import Enumfrom typing import Optional, Any, Listfrom pydantic import BaseModel, Fieldenum.Enum: 用于定义枚举类型,方便管理一组固定的常量值。typi

2025-01-02 13:21:14 644

原创 FastAPI依赖注入

它通过将依赖项(如数据库连接、配置、认证等)注入到需要它们的组件中,而不是组件自行创建或管理这些依赖项,从而提高代码的模块化、可测试性和可维护性。为了帮助您更好地理解和实践,以下是一个完整的示例项目,展示了如何使用 FastAPI、Celery 和 Redis 实现异步任务处理和回调机制。通过系统性的学习和持续的实践,您将能够熟练掌握 FastAPI 的依赖注入和回调机制,构建高效、可靠且可维护的后端服务。以下是一个完整的示例项目,结合依赖注入和回调机制,展示如何构建一个功能全面的 FastAPI 应用。

2025-01-02 07:33:37 792

原创 网络概念及格式

它是 Web 的基础,用于在客户端(通常是浏览器)和服务器之间传输超文本数据,如 HTML、CSS、JavaScript 以及其他资源。它位于 OSI 模型的第四层,负责在网络中的两台计算机之间建立连接,并确保数据的可靠传输。是一种存储机制,用于保存频繁访问的数据,以减少数据检索的延迟和服务器负载。是一个基于 OAuth 2.0 的身份认证协议,添加了身份验证层,允许客户端验证用户的身份并获取基本的用户信息。是浏览器的安全机制,限制一个源(协议、域名、端口)加载的文档或脚本如何与另一个源的资源进行交互。

2025-01-02 07:33:06 866

原创 python回调

在中定义各种事件的数据类。这些类使用模块,便于数据的存储和传递。@dataclass@dataclass@dataclassinput: str@dataclassword: str@dataclass@dataclass@dataclass@dataclass@dataclass@dataclassinput: str在中定义一个抽象的回调基类,包含多个回调方法,每个方法对应一个特定的事件。

2025-01-02 07:32:04 919

原创 python异步

异步编程是一种编程范式,允许程序在等待某些操作(如 I/O 操作、网络请求)完成时,不阻塞整个程序的执行流程。通过异步编程,程序可以在等待任务完成的同时,继续执行其他任务,从而提高资源利用率和响应性。return self # 返回资源或相关对象。

2025-01-02 07:31:27 1159

原创 Chat API

messages 为openai 格式。目前不支持openai的复杂多轮,先临时处理else:@router . post('/chat/completions' , response_class = StreamingResponse) async def chat_completions(request : APIChatCompletion , Authorize : AuthJWT = Depends()) : # messages 为openai 格式。

2024-12-31 07:52:27 612

原创 pycharm和vscode

关于您在使用 PyCharm 时遇到的新问题,即在新建文件中导入模块失败,而在 VSCode 中则正常工作,以下是可能的原因及对应的解决方案。有时,VSCode 使用的解释器或环境与 PyCharm 不同,导致导入问题。确保 PyCharm 使用的 Python 解释器与 VSCode 中使用的相同,尤其是在使用虚拟环境时。为了进一步帮助您排查问题,以下是一个简化的项目示例及其在 PyCharm 中的配置步骤。确保项目中的导入语句符合 Python 的导入规范,尤其是在包结构中使用相对导入时。

2024-12-30 13:44:54 860

原创 json读取

为了保持项目的模块化和可维护性,建议将 API 相关的代码组织在。

2024-12-30 07:59:37 879

原创 常用设计模式

定义对象之间的一对多依赖关系,当一个对象状态改变时,所有依赖它的对象都会自动收到通知并更新。:定义一系列的算法,把它们封装成一个个独立的策略对象,允许客户端在运行时选择不同的策略。:将一个请求封装成一个对象,从而使你可以用不同的请求对客户进行参数化。:确保一个类只有一个实例,并提供一个全局访问点来获取这个实例。:通过定义一个接口来创建对象,让子类决定实例化哪个类。:动态地给对象添加额外的职责,而不改变其结构。

2024-12-30 07:54:26 459

原创 导包学习系统化

正确地组织项目结构和管理模块导入对于 Python 项目的可维护性和可扩展性至关重要。通过理解 Python 的导入机制,合理编写文件,遵循最佳实践,并掌握常见导包错误的排查和解决方法,您可以有效避免和解决开发过程中遇到的导包问题。对于您的项目bisheng目录结构清晰,每个包和子包包含文件。文件正确导入子模块,并更新__all__列表。设置PYTHONPATH,确保 Python 解释器能够找到bisheng包。避免循环依赖,保持模块之间的独立性。使用绝对导入,提高代码的可读性和可维护性。

2024-12-30 07:53:18 988

原创 ChatManager学习

这段代码主要实现了一个基于WebSocket的聊天管理系统,使用FastAPI框架构建。主要功能包括管理聊天历史、处理客户端连接、消息传递、缓存管理以及与后端服务的交互。

2024-12-30 07:52:33 642

原创 Git实操

和。它们在一个 WebSocket 聊天系统中承担了重要角色,用于管理聊天历史、处理 WebSocket 连接和消息流等。下面是对这两个类的详细总结和描述。

2024-12-27 07:53:25 630

原创 websocket学习

是的,上述提供的代码示例。无论你选择使用websockets库(基于asyncio)还是库(基于多线程),都可以在连接建立后通过命令行手动输入消息发送给服务器,并接收服务器返回的消息。为了确保你能够顺利地手动发送和接收消息,以下是对两种方法的进一步说明和完整的示例代码。这些代码已经集成了手动输入发送消息的功能,并在连接建立后提示用户输入消息。

2024-12-23 12:49:49 1131

原创 postman测试websocket

当然可以!以下是使用框架创建一个包含 WebSocket 接口的服务,并使用来测试该接口的详细步骤。

2024-12-10 08:07:33 4639

原创 pycharm和git

本地分支:在你自己电脑上独立开发用的分支,不会自动同步到服务器。远程分支:服务器上的分支,是团队共享的代码状态,可以通过git pull和git push与本地保持同步。冲突产生的原因:多个人在同一个文件的同一处地方同时做了不同的修改,Git 无法自动合并。解决冲突的方法:手动编辑有冲突的文件,选择合适的修改内容,然后提交解决后的版本。通过熟悉以上步骤和概念,你就能更顺畅地应对团队协作中出现的版本同步与冲突问题。

2024-12-10 07:58:49 956

原创 工厂模式学习

是一种创建型设计模式,旨在通过定义一个创建对象的接口,让子类决定实例化哪一个类。它将对象的创建过程封装起来,使得系统在不暴露对象创建逻辑的情况下,能够灵活地创建对象。它提供一个统一的接口来创建对象,而不需要您了解对象创建的具体过程。(即使用工厂的代码)不需要知道 Car 或 Bike 是如何创建的,只需调用工厂的。它不需要知道产品是如何创建的,只需要通过工厂获取。实现了工厂模式的核心思想,将服务的创建过程与其使用过程解耦。是工厂类,负责根据传入的参数创建不同类型的玩具(Car 或 Bike)。

2024-12-10 07:57:13 621

原创 poerty结合conda环境

Poetry 是一款专注于 Python 项目依赖管理与打包的工具。它通过文件集中管理项目的依赖、版本锁定以及发布流程,提供了一站式的解决方案,简化了传统的pip或setup.py等工具的使用。本指南详细介绍了如何使用Poetry进行 Python 项目的打包与安装,特别是结合Conda环境管理和上传到私有仓库的实战操作。环境准备:安装并配置 Poetry 和 Conda。项目管理:创建新项目或在现有项目中初始化 Poetry。依赖管理:添加、移除和更新项目依赖。结合 Conda。

2024-12-09 13:28:44 2212

原创 Python的导包

模块(Module):任何一个.py文件,包含函数、类和变量。包(Package):一个包含文件的目录,组织多个模块。文件:标识目录为包。包含初始化代码(可选)。控制导入内容,简化导入路径。使用__all__列表定义公共接口。通过合理使用文件,您可以构建结构清晰、易于维护且功能强大的Python项目。如果您有更多问题或需要进一步的解释,欢迎随时提问!正确的代码结构和导包方法是构建高质量Python项目的基础。清晰的项目结构根据项目规模选择合适的结构(单文件、多模块、包结构)。

2024-12-09 13:22:24 915

原创 poetry打包安装

源代码包(通常为.tar.gz),包含项目的源码。:二进制分发包,扩展名为.whl。Wheel 是一种现代的、构建后的分发格式,安装速度快,并且不需要在安装时编译 C 扩展(如果包中有的话)。对于纯 Python 包,Wheel 会是纯源文件打包的经过标准化封装的产物,对于有 C 扩展的包,Wheel 则包含已经编译好的二进制文件,可大幅降低安装难度和安装时间。Poetry 内置了构建为 Wheel 包和 sdist 的能力,你无需单独安装setuptools或wheel工具即可构建出.whl文件。

2024-12-09 13:21:19 650

原创 Python打包学习

打包是将你的Python项目及其依赖项组织、压缩成一个可以分发和安装的格式的过程。通过打包,你可以轻松地分享你的代码给其他开发者,或者在不同的环境中部署应用程序。现代 Python 包管理工具不断发展,旨在简化依赖管理、打包和发布流程。Wheel是 Python 官方推荐的打包格式,具有安装速度快、兼容性好的优点。是 PEP 518 引入的配置文件标准,旨在统一和简化打包配置。Poetry是一个集成了依赖管理、打包和发布功能的现代化工具,基于,旨在取代传统的setup.py和。

2024-12-09 13:20:09 997

原创 Git分支开发学习

Git是一种分布式版本控制系统,用于跟踪源代码在开发过程中的变化。它允许多个开发者在同一个项目中协作,记录每一次代码的修改,方便版本回溯和协同工作。关键特性分布式:每个开发者都有完整的代码库和历史记录,无需依赖中央服务器。高效:Git的性能在处理大型项目时表现出色。数据完整性:Git使用SHA-1哈希确保代码库的完整性和安全性。支持非线性开发:通过分支和合并,支持复杂的开发流程。Fork上游仓库。

2024-12-09 13:05:48 628

原创 bisheng新功能

BISHENG Workflow适用于需要复杂业务流程编排的场景,如文档生成、内容审核、知识检索、营销文案定制等。在各类拥有较长决策链条或需多方协同的业务流程中,BISHENG能大幅提高效率与灵活度,降低人工沟通和切换成本。这种产品特性对需要敏捷迭代、频繁调优的商业环境尤其有价值。与市面同类Workflow产品相比,BISHENG的优势在于将复杂逻辑(如循环、并行)简化为直观的连线操作,并增强了人类在执行过程中的可控性和交互深度,从而更好地贴近真实业务场景中的工作模式。

2024-12-09 07:58:10 979

原创 12高可用性与集群

此外,结合复制的高级技术与优化措施,采用智能化和自动化的管理工具,进一步提升数据库系统的性能和可靠性。随着技术的不断发展,持续关注和应用最新的高可用性与集群技术,将确保数据库系统在复杂和动态的业务环境中保持高效、稳定和安全。随着技术的不断进步和业务需求的日益复杂,高可用性与集群技术也在持续演进,提供更高效、更智能和更灵活的解决方案。:一家在线教育平台,数据库需要支持大量的并发用户访问,提供高性能的数据查询和实时数据更新,确保数据的高可用性和一致性。是一种全局唯一的事务标识符,用于简化复制配置和管理。

2024-12-08 21:40:54 951

原创 12数据库设计规范

确保每个字段的值都是原子性的,即字段值不可再分。

2024-12-08 21:40:08 792

原创 11备份与恢复

备份与恢复是数据库管理中不可或缺的环节,确保数据的安全性和业务的连续性。同时,随着技术的不断发展,持续关注和应用最新的备份与恢复技术,将进一步提升数据库系统的可靠性和可用性。随着数据量的持续增长和技术的不断进步,备份与恢复技术也在不断演进,提供更高效、安全和智能的解决方案。通过导出数据库的结构和数据为可读的格式(通常是 SQL 脚本),使得备份文件可以在不同的数据库实例之间迁移或恢复。根据备份类型,恢复方法有所不同。:详细记录备份和恢复操作,包括备份时间、备份类型、备份大小和操作结果,便于审计和追踪。

2024-12-08 21:39:37 628

原创 9视图、存储过程与触发器

视图、存储过程与触发器是数据库管理中不可或缺的工具,帮助开发者简化复杂操作、封装业务逻辑、增强数据安全性以及实现自动化数据处理。随着数据库技术的不断发展,视图、存储过程与触发器也在不断演进,提供更强大和灵活的功能。视图、存储过程与触发器各自有不同的用途和优势,但在实际应用中,它们经常被结合使用,以实现更复杂和高效的数据库操作。:使用存储过程执行复杂的业务逻辑,并通过触发器在数据操作时自动调用存储过程,确保业务规则的一致性。:将复杂的逻辑封装在数据库函数中,在触发器中调用这些函数,提升代码的模块化和复用性。

2024-12-08 21:39:04 824

数据挖掘相关的信息入门资料

数据挖掘相关的信息入门资料

2024-11-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除