git_个人本地开发分支
1 前提条件
由于 Pull Request 流程的限制,我无法直接 push 到主分支
master。因此,每次提交代码时,我需要将更改 push 到远程的
xieyan 分支,由他人 review 后再 merge 到主分支。
我在本地通常使用 VS Code 操作 Git。如果本地分支为
master,远程推送时只能选择 xieyan 分支,每次
commit 和 push 时都会提示我创建分支。
2 操作
2.1 操作分支
在本地创建并切换到个人分支进行开发,然后将更改 push
到远程个人分支,具体步骤如下:
12345git checkout -b xieyan # 创建并切换到 xieyan 分支,当前所有 commit 也将保留在 xieyan 分支上# 进行代码修改git add <文件名> # 添加修改的文件git commit -m '提交说明' # 提交更改git push origin xieyan # 将更改推送到远程 xieyan 分支
2.2 更新本地开发分支
若远程主分支 master 上有了新的更改, ...
使用辅助编程的一些思考
1 引子
最近使用辅助编程比较频繁,也在思考:
它的出现对程序员来说是利大于弊还是弊大于利。
对非程序员来说,有了辅助编程是否就能达到程序员的水平?
目前,辅助编程还不能解决哪些问题呢?
1.1 使用场景
1.1.1 程序员角度
先从程序员的角度看看。
在熟悉的情境下,当我们面对熟悉的问题时,可能会需要编写大量逻辑代码。在这种情况下,机器可以帮助我们自动生成部分代码,从而加速开发过程。
对于不熟悉的架构和语法,机器辅助变成能够生成整体示例和语法正确的代码,从而避免因为语法错误而浪费时间;帮助理解和快速上手,并且更容易理解系统的工作原理。
在调试过程中,对于一些简单的问题,机器可以提供快速的反馈和解决方案,从而节省我们的时间;对于复杂问题可能无法直接解决,但可以提供一些建议思路,来减少查找和定位的过程。公平地说,与之前手动查找问题相比,提效很多。
辅助编程也有一些问题,如多端联调比较困难;如果一些小众工具没有提供文档,辅助编程工具也不知道如何使用。虽然理论上可以通过
Agent 和 RAG 来解决这些问题,但实际实现起来比较麻烦。
1.1.2 非程序员角度
再从非程序员的角度看看,一 ...
CHANGELOG_写法
1 说明
更新说明,GitHub 社区和开源项目中也普遍采用这种方式。
2 创建 CHANGELOG.md
在项目根目录下创建一个 CHANGELOG.md
文件,用于记录所有版本的更新信息。
3 推荐的格式
CHANGELOG.md 的格式可以参考以下模板:
12345678910111213141516171819202122# Changelog## [Unreleased]### Added- 新增的功能或模块### Changed- 对现有功能的改进或变更### Fixed- 修复的 Bug 或问题## [1.0.1] - 2024-11-08### Added- 添加了用户自定义的 `emptyStateText` 支持。### Fixed- 修复了 `SuggestModal` 无法显示自定义消息的问题。## [1.0.0] - 2024-10-01### Added- 初始版本发布,包含核心功能。
4 版本说明规范
版本号:每次更新都在新版本号下添加变更说明,遵循语义化版本规范(SemVer)(例如
1.0.1)。
日期:在版本号旁注明发布日期,方便追溯。
分类:将变 ...
开源项目_语音合成_edge tts
免费使用 Microsoft Edge
项目地址:https://github.com/rany2/edge-tts
1 功能
语音合成支持各种主流语言,并可调节合成速度、音量和音高。我测试了一下,中文
300 字的合成时间约为 3 秒,600 字约为 6 秒。
从效果来看,语气和情感表达比传统技术(相对旧版讯飞)更好,清晰度和准确率也很高。虽然不能定制,但一般用户无需定制,只要合成效果不出戏即可。
2 原理
模拟 edge 浏览器行为,远程调用 microsoft 语音合成服务。
3 安装
1$ pip install edge-tts
4 查看支持的语言和声音
1edge-tts --list-voices
5 合成中文
5.1 命令行调用
1$ edge-tts --text "我正在测试" --write-media hello.mp3 --voice zh-CN-YunxiNeural
5.2 Python 程序调用
12345678import edge_ttsTEXT = "我正在测试"VOICE = "zh-CN-Yun ...
试用_Claude3
1 简介
好消息是,2024 年 3 月 4 日发布了 Claude3,据传比 GPT-4 更好,snooet
版本可以免费试用,坏消息是我们这儿不能用。
在官网注册时,需要选择国家并使用手机接收短信验证码。而在选项中没有中国这个选项。即使成功注册了账号并申请了
API
密钥,免费版本仍需要绑定信用卡才能使用。绑定信用卡也需要接收短信验证,网上说每个手机号只能注册一次,所以似乎也无法短信接收平台。(如果你找到了注册方法,请私信告诉我)
虽然无法通过 API
调用并将其添加到我们的工具中,但可以通过亚马逊云来免费体验一下。
2 Claude3
2.1 三个模型
Claude 3 共发布了三个模型:
Claude 3
Opus:最强大的模型,在高度复杂的任务上提供最先进的性能,并展示流畅性和类似人类的理解。
Claude 3
Sonnet:在智能和速度之间最平衡的模型,是企业工作负载和规模化 AI
部署的绝佳选择
Claude 3
Haiku:最快、最紧凑的模型,旨在实现近乎即时的响应能力和模仿人类交互的无缝
AI 体验
2.2 主要特点
这次升级的主要特点包含:
多语言功能:Cla ...
github自动编译Release版本
1 原理
GitHub Actions
是一个强大的自动化工具,可以帮助你简化开发流程的各种操作。从测试代码到部署应用,它几乎可以自动化开发中的任何任务。
这里使用它来自动发布 Obsidian 插件。当打 TAG
时,它会触发编译并发布新版本。
2 操作
2.1 设置工作流
在 github 项目中创建一个工作流配置文件
12345mkdir .github/workflows/vi .github/workflows/release.ymlgit add .github/workflows/release.ymlgit commit -m 'xxx'git push
yml 中具体内容见:ob
自动发布教程
2.2 本地测试
在本地安装一个与 yml
文件中类似的环境(node-version)。测试无误后,再上传 GitHub
进行编译。请确保 JSON 配置文件完整。
2.3 打标签即可触发工作流
12git tag -a 1.0.0 -m "1.0.0"git push origin 1.0.0
如果标签错误,需要先删除原有标签,然后重 ...
论文阅读_大型语言模型增强强化学习调查
12345678中文标题:Survey on Large Language Model-Enhanced Reinforcement Learning: Concept, Taxonomy, and Methods中文名称: 大型语言模型增强强化学习调查:概念、分类和方法链接: https://arxiv.org/pdf/2404.00282作者: Yuji Cao, Huan Zhao, Yuheng Cheng, Ting Shu, Yue Chen, Guolong Liu, Gaoqi Liang, Junhua Zhao, Jinyue Yan, Yun Li,机构: 香港中文大学日期:2024-03-30引文数量:135长度:正文15页
来自:241011 哲明分享
摘要
目标:
提供对大型语言模型(LLMs)增强强化学习(RL)相关文献的全面综述,明确其与传统
RL 方法的对比,澄清研究范围和未来研究方向。
方法: 基于经典的代理 -
环境互动范式,提出结构化分类法,将 LLMs 在 RL
中的功能系统地划分为信息处理器、奖励设计者、决策者和生成器四个角色。逐一总结方法、 ...
软件版权 License
1 如何选择
GPLv2:允许用户自由地使用、修改和分发。但如果你修改和发布了修改后的版本,必须保持它的开源状态。(允许商用,但如果你分发基于
GPLv2 的修改软件,你必须提供源代码,并以 GPLv2 许可证发布)
GPLv3 与更多许可证兼容,GPLv2 的兼容性较差。允许 GPLv3 代码与 Apache
License 2.0 等许可证一起使用,拓宽了软件的使用范围。
LGPL 是介于完全自由的许可证(如 MIT、BSD)和严格的 GPL
许可证之间的一种折中。它允许闭源软件使用 LGPL 库,同时确保对 LGPL
库本身的修改保持开源。
MIT:非常宽松,允许开发者在任何项目中使用、修改、分发代码,包括在闭源的商业软件中使用,而不需要公开源代码。(允许用于商业用途)
Apache License
2.0:是一种“宽松”的许可证,允许在开源和闭源项目中自由使用、修改和分发代码。你可以将
Apache
许可证的代码整合进商业软件中,而不需要开源你的代码。唯一的要求是保留原始的版权声明和许可证文本。
其它
BSD 系列 (BSD-2, BSD-3): 宽松的许可证,允许闭源使用 ...
Git_保护主分支
1 功能
在 GitHub 上设置我的项目代码只能通过 Pull
Request,审核后才能合并到主分支。
通常情况下,只有项目的所有者和合作者才能向主分支上传代码。因此,这里限制的是他们在上传代码时需要进行相互检查。
2 方法
进入仓库设置:
打开 GitHub 仓库。
在仓库页面的右上角,点击 Settings(设置)。
设置分支保护规则:
在仓库设置页面的左侧菜单,点击 Branches。
点击 Add branch ruleset。
选择受保护的分支:
起一个名字:Ruleset Name。
在 Targets 中添加要保护的分支,一般设置 Default
即主分支。
启用强制 Pull Request 和 Code Review:
选中 Require a pull request before merging。
选中 Require approvals,然后在下方选择需要多少个审核人(比如至少 1
个)。
保存规则
django_多语言支持
1 安装底层库
1$ apt-get install gettext -y
2 修改设置
在 settings.py 中加
1234567891011USE_I18N = TrueUSE_L10N = TrueLANGUAGES = [ ('en', 'English'), ('zh', 'Chinese'),]LOCALE_PATHS = [ os.path.join(BASE_DIR, 'locale'),]
3 修改代码
代码中加入要翻译的字符串,形如:
12from django.utils.translation import gettext as _text = _("Hello, World")
4 生成或更新语言文件
123$ python manage.py makemessages -l zh# 或者$ django-admin makemessages -l zh
此时生成 locale/zh/LC_MESSAGES/djang ...