网站免费申请建站,网站备案表上面的开办单位写什么,微信商城网站建设,网站找人做seo然后网站搜不到了关注公众号【爱发白日梦的后端】分享技术干货、读书笔记、开源项目、实战经验、高效开发工具等#xff0c;您的关注将是我的更新动力#xff01; 在当今应用开发领域#xff0c;类似OpenAI API等生成式AI技术的蓬勃发展正在彻底改变着应用开发的格局。Python和JavaScript等语… 关注公众号【爱发白日梦的后端】分享技术干货、读书笔记、开源项目、实战经验、高效开发工具等您的关注将是我的更新动力 在当今应用开发领域类似OpenAI API等生成式AI技术的蓬勃发展正在彻底改变着应用开发的格局。Python和JavaScript等语言已经拥有丰富的资源来支持这些技术其中LangChain就是一个显著的例子。然而Go语言开发者面临的选择却相对有限。LangChainGo作为LangChain的Go语言版本一直在努力与Go的编程理念保持一致而LangChain本身则常被认为过于复杂。 为了满足对一个既简单又强大的Go兼容工具的需求我们推出了Agency。这个Go框架采用了一种精简的方法论与Go固有的静态类型和性能效率的优势完美契合。它代表了我们对向Go编程社区引入用户友好且高效的AI功能的解决方案。
Agency的特性
Go编程理念契合 与LangChainGo不同Agency注重与Go的编程理念的一致性使得开发者更容易上手。简洁而强大 我们精心打磨了Agency的框架确保其在保持简洁易用的同时不失强大的功能。静态类型与性能效率 利用Go语言的静态类型和出色的性能优势Agency在处理AI功能时更为高效。
Agency在实战中的应用
package mainimport (bufiocontextfmtos_ github.com/joho/godotenv/autoloadgithub.com/neurocult/agencygithub.com/neurocult/agency/providers/openai
)func main() {// 初始化Assistantassistant : openai.New(openai.Params{Key: os.Getenv(OPENAI_API_KEY)}).TextToText(openai.TextToTextParams{Model: gpt-3.5-turbo}).SetPrompt(You are helpful assistant.)// 交互式聊天messages : []agency.Message{}reader : bufio.NewReader(os.Stdin)ctx : context.Background()for {fmt.Print(User: )text, err : reader.ReadString(\\n)if err ! nil {panic(err)}// 用户输入input : agency.UserMessage(text)// 执行Assistantanswer, err : assistant.SetMessages(messages).Execute(ctx, input)if err ! nil {panic(err)}// 打印Assistant回答fmt.Println(Assistant: , answer)// 更新消息记录messages append(messages, input, answer)}
}
以上是一个简单的Chat例子展示了如何使用Agency框架与OpenAI的API实现基于Go的交互式聊天。这个例子体现了Agency的简单易用以及如何与Go的语言特性无缝结合为Go语言开发者提供了一种高效且友好的AI功能引入方式。
结语
在这个AI盛行的时代我们深知Go语言开发者对于高效、简单而强大的AI工具的需求。Agency的诞生旨在填补Go语言领域的空白为开发者提供一种更直观、更贴近Go编程理念的AI解决方案。