wenxin-starter: 高性能文心一言&文心千帆大模型的Spring Boot Starter

Ray

wenxin-starter

wenxin-starter: 连接百度大模型的开发利器

在人工智能快速发展的今天,百度推出的文心一言和文心千帆大模型为开发者提供了强大的AI能力。然而,如何快速高效地将这些能力整合到现有的Spring Boot项目中,一直是开发者面临的挑战。幸运的是,wenxin-starter的出现为我们提供了完美的解决方案。

什么是wenxin-starter?

wenxin-starter是一款基于Spring Boot的高性能starter,专门用于连接百度文心一言和文心千帆大模型。它的设计理念是帮助开发者以最简单、最高效的方式接入百度的AI能力,大大降低了开发难度和时间成本。

wenxin-starter logo

wenxin-starter的主要特性

  1. 完整API支持: wenxin-starter完整对接了文心千帆的官方API文档,确保你可以使用百度大模型的所有功能。

  2. 多功能支持: 不仅支持文本生成,还支持文生图、连续对话等高级功能,满足各种AI应用场景的需求。

  3. 流式返回: 支持对话的流式返回,提供更加流畅的用户体验。

  4. 内置对话记忆: 自动保存对话历史,让AI更好地理解上下文,提供连贯的对话体验。

  5. QPS控制: 支持对单个模型的QPS(每秒查询率)进行精确控制,有效管理API调用频率。

  6. 排队机制: 内置排队机制,在高并发场景下也能保证请求的有序处理。

快速开始使用wenxin-starter

要开始使用wenxin-starter,只需要几个简单的步骤:

  1. 添加依赖: 在你的Maven项目中添加以下依赖:

    <dependency>
      <groupId>io.github.gemingjia</groupId>
      <artifactId>wenxin-starter</artifactId>
      <version>2.0.0-beta4</version>
    </dependency>
    

    或者在Gradle项目中:

    dependencies {
      implementation 'io.github.gemingjia:wenxin-starter:2.0.0-beta4' 
    }
    
  2. 配置access-token: 在application.yml中添加你的百度AI平台access-token:

    gear:
      wenxin:
        access-token: xx.xxxxxxxxxx.xxxxxx.xxxxxxx.xxxxx-xxxx
    

    或者使用API Key和Secret Key(推荐):

    gear:
      wenxin:
        api-key: xxxxxxxxxxxxxxxxxxx
        secret-key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    
  3. 创建客户端: 使用@Configuration注解创建一个配置类,在其中定义你需要的模型客户端:

    @Configuration
    public class ClientConfig {
    
        @Bean
        @Qualifier("Ernie")
        public ChatModel ernieClient() {
            ModelConfig modelConfig = new ModelConfig();
            modelConfig.setModelName("Ernie");
            modelConfig.setModelUrl("https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/completions");
            
            // 可选:设置模型特定的access-token
            modelConfig.setAccessToken("xx.xx.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");
            
            // 设置模型的请求头信息
            ModelHeader modelHeader = new ModelHeader();
            modelHeader.set_X_Ratelimit_Limit_Requests(100);
            modelHeader.set_X_Ratelimit_Limit_Tokens(2000);
            modelHeader.set_X_Ratelimit_Remaining_Requests(1000);
            modelHeader.set_X_Ratelimit_Remaining_Tokens(5000);
            
            modelConfig.setModelHeader(modelHeader);
            
            return new ChatClient(modelConfig);
        }
    }
    
  4. 使用客户端: 在你的Controller或Service中注入并使用客户端:

    @RestController
    public class ChatController {
    
        @Resource
        @Qualifier("Ernie")
        private ChatModel chatClient;
        
        @GetMapping(value = "/stream/chats", produces = MediaType.TEXT_EVENT_STREAM_VALUE)
        public Flux<String> chatSingleStream(@RequestParam String msg, @RequestParam String uid) {
            Flux<ChatResponse> responseFlux = chatClient.chatsStream(msg, uid);
            return responseFlux.map(ChatResponse::getResult);
        }
    }
    

wenxin-starter的优势

  1. 简化开发流程: wenxin-starter封装了与百度AI平台交互的复杂细节,让开发者可以专注于业务逻辑的实现。

  2. 高性能: 基于WebFlux构建,支持异步非阻塞的请求处理,在高并发场景下表现优异。

  3. 灵活配置: 支持多种配置方式,可以针对不同的模型和场景进行精细化的设置。

  4. 持续更新: 项目持续维护和更新,及时跟进百度AI平台的最新特性和变化。

Star History Chart

未来展望

wenxin-starter的开发团队正在积极开发新的特性,包括:

  • 插件支持: 计划增加插件支持,进一步扩展wenxin-starter的功能。
  • 更多模型支持: 持续关注并适配百度推出的新模型。
  • 性能优化: 不断优化性能,提供更快速、更稳定的服务。

结语

wenxin-starter为Java开发者提供了一个强大而易用的工具,大大简化了接入百度AI大模型的过程。无论你是想要开发一个智能客服系统,还是想要构建一个复杂的AI应用,wenxin-starter都能为你提供有力的支持。

如果你正在寻找一种快速、高效的方式来在Spring Boot项目中使用百度的AI能力,wenxin-starter无疑是你的最佳选择。立即尝试使用wenxin-starter,感受AI开发的无限可能吧!

🔗 GitHub仓库 📚 详细文档

avatar
0
0
0
最新项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号