Day: November 6, 2023

钩子(Hooks):WordPress 插件开发的神器钩子(Hooks):WordPress 插件开发的神器

各位WordPress的同仁们,你们是否曾被插件开发中的一些问题困扰,想要修改WordPress的工作流程却又不敢动核心代码?今天,我要给大家介绍一个强大的工具,那就是我们的主角——钩子(Hooks)。它就如同一把神奇的钥匙,能让我们无需直接修改核心代码,就可以改变WordPress的工作方式。这将使得我们在升级WordPress时无需担心代码的兼容问题。 钩子:WordPress的精髓 钩子是WordPress的精髓所在,它允许我们在插件开发中插入代码,改变WordPress的工作流程。这样,我们就可以在不直接修改核心代码的情况下,方便的升级WordPress的新版本,而不需要修改任何代码。 如果我们直接修改了核心代码,那么在下一次WordPress升级时,所有的改动就会被覆盖掉。而使用钩子,我们可以在核心目录之外单独开发插件,这样就保证了代码在升级时的安全性。 没有钩子,插件就无法改变WordPress的功能。钩子系统会贯穿整个插件的开发过程,而且在几乎每一个插件的开发中都会用到。掌握了钩子的用法,你就会明白为什么WordPress这个平台这么强大,并有上千个插件供几百万用户使用。 两类钩子:动作钩子和过滤器钩子 WordPress主要有两种类型的钩子:动作钩子和过滤器钩子。动作钩子(Action Hooks)让我们可以在特定的时刻执行一个函数,而过滤器钩子(Filter Hooks)则让我们可以操作通过钩子的输出。这两种钩子都是开发插件时的重要工具。 动作钩子让你可以在WordPress加载过程中或者当某个事件发生的特定时刻触发一个函数。比如,你可能想要在WordPress加载一个页面或者保存一篇文章时执行一个函数。 过滤器钩子则让你可以对通过钩子的数据进行修改。比如,你可以修改文章的内容,或者更改网站的标题等。 钩子的使用 要使用钩子,我们需要使用到 do_action() 和 add_action() 这两个函数。do_action() 是触发一个动作钩子,而 add_action() 是向一个动作钩子添加一个函数。 例如,我们可以在前台的 <head> 里面添加一个名为 wp_head 的钩子,这个钩子经常被用来添加 meta 信息,样式表,和 js 脚本。 当这段代码在WordPress中执行时,它会寻找任何为 wp_head 动作钩子注册的动作,然后按照特定顺序执行它们。 要向一个动作钩子添加一个函数,我们需要使用 add_action() 函数。例如,我们可以向 wp_footer 钩子添加一个函数,这个函数会在每次页面加载时执行。 其中,'wp_footer' 是你的函数执行时的动作钩子的名称,'your_function' 是你希望WordPress调用的函数名。 结语 钩子是WordPress插件开发中的一个强大工具,它让我们能在不改变核心代码的情况下,改变WordPress的工作流程。 [...]

AgentVerse:开启多智能体交互的新篇章AgentVerse:开启多智能体交互的新篇章

欢迎来到AgentVerse!在这个充满可能性的世界中,我们致力于为大型语言模型(LLMs)提供一个自定义的多智能体环境。那么什么是AgentVerse呢?它是一个强大的框架,旨在简化为LLMs创建自定义多智能体环境的过程。这里,你可以快速、低成本地开发和定制你所需的环境,专注于你的研究,而不被实现细节所困扰。 AgentVerse的特色 AgentVerse的主要优势在于其高效的环境构建能力和可定制的组件。我们的框架提供了一系列基础构建模块,使得创建多智能体环境变得轻而易举。只需在配置文件中写入几行,你就可以轻松建立如LLMs的聊天室这样的基本环境。此外,AgentVerse还支持多智能体环境的工具,当前我们支持BMTools中提供的工具。 最新消息 我们在AgentVerse的开发过程中取得了一些重要的进展。首先,我们非常兴奋地分享我们的AI开源社区hugging face: AgentVerse。你可以在提供openai API密钥和openai组织代码后,尝试NLP Classroom和Prisoner’s Dilemma两个模拟应用程序。其次,我们还发布了一篇与本仓库相关的进行中的论文,详细介绍了AgentVerse的任务解决框架。我们还为你们提供了一个简单的H5宝可梦游戏,该游戏允许与宝可梦中的角色互动! 开始使用 要开始使用AgentVerse,首先你需要安装它。你可以通过 pip install -U agentverse 命令来安装,或者通过手动克隆最新的仓库来安装此包。然后,你需要按照我们的指示,导出你的OpenAI API密钥。如果你想使用BMTools提供的工具,你还需要安装BMTools。 安装完成后,你就可以开始创建你的多智能体环境了。我们在agentverse/tasks目录中提供了一些示例,你可以参考这些示例来创建你自己的环境。例如,你可以创建一个教室环境,其中有一个智能体扮演教授的角色,其他的智能体扮演学生的角色。或者,你也可以创建一个更复杂的环境,例如一个数据库诊断环境,其中一个智能体扮演首席数据库管理员的角色,其他的智能体扮演内存和CPU智能体的角色。 总的来说,无论你的需求是什么,AgentVerse都能提供一个灵活且可扩展的框架,让你能够轻松地构建和定制自己的多智能体环境。 [...]

零一万物(01.AI)推出全新AI大模型:Yi系列零一万物(01.AI)推出全新AI大模型:Yi系列

欢迎诸位,我今天要分享的是一个振奋人心的新闻:零一万物(01.AI),一个全球领先的AI技术与应用公司,刚刚发布了它们新一代的AI大模型——Yi系列。Yi系列模型是一组全新的大型语言模型,它们的参数规模分别为60亿(Yi-6B)和340亿(Yi-34B)。而且,它们都支持在推理阶段将序列长度扩展至32K。 01-ai/Yi-34B · Hugging Face 一、Yi系列模型的诞生 Yi系列模型是零一万物研发团队自主训练的大语言模型。首次公开发布包含两个参数尺寸为6B和34B的双语(英/中)基础模型。它们都是以4K序列长度进行训练,但在推理时可以扩展到32K。 二、模型性能的优越表现 Yi-6B和Yi-34B基础模型在2023年11月2日发布。在模型性能上,Yi系列模型在多项评测中展现出了全球领跑的优秀性能。 对比同类型的开源模型,我们发现,不同模型可能采用不同的提示、后处理策略和取样技术,可能导致结果有显著的差异。我们的提示和后处理策略与原始基准测试保持一致,评估时采用贪婪解码,不对生成的内容进行任何后处理。对于原作者未报告的分数(包括以不同设定报告的分数),我们试图用我们的流程得出结果。 我们采用了Llama2的方法论来广泛评估模型的能力。具体来说,我们引入了PIQA、SIQA、HellaSwag、WinoGrande、ARC、OBQA和CSQA来评估常识推理能力。SquAD、QuAC和BoolQ被用来评估阅读理解能力。CSQA被单独用7-shot设置进行测试,而所有其他测试都采用了0-shot配置。此外,我们在”Math & Code”分类下引入了GSM8K(8-shot@1)、MATH(4-shot@1)、HumanEval(0-shot@1)和MBPP(3-shot@1)。由于技术限制,我们没有对Falcon-180进行QuAC和OBQA的测试,分数是通过平均剩余任务的分数得出的。由于这两项任务的分数通常低于平均值,我们认为Falcon-180B的性能没有被低估。 三、模型的使用 我们在Github仓库上提供了关于如何使用此模型的一般指导。 四、免责声明 尽管我们在训练过程中使用数据合规性检查算法,以尽我们最大的能力确保训练模型的合规性,但由于数据的复杂性和语言模型使用场景的多样性,我们无法保证模型在所有场景中都能生成正确和合理的输出。请注意,模型仍有可能产生问题输出的风险。我们对任何由误用、误导、非法使用和相关的错误信息,以及任何相关的数据安全问题产生的风险和问题不承担责任。 五、许可证 Yi系列模型完全开放给学术研究和经过申请许可的免费商业使用。所有使用必须遵守模型许可协议2.0。要申请正式的商业许可证,请通过yi@01.ai与我们联系。 六、结语 Yi系列模型的诞生和发展,标志着我们正在走向人工智能的新纪元——AI 2.0。我们期待与全球的研究者、开发者和企业等合作伙伴一起,共同推动AI的进步,共同创造一个更智能、更美好的未来。 让我们一起迎接这个全新的世界,一个由零一万物打造的,由Yi系列大模型技术推动的,AI 2.0的世界。 [...]