我对百度千帆AI大模型的认识

基本概念

文心一言:百度千帆大模型系列的核心产品,是百度自主研发的超大规模语言模型
ERNIE Bot:基于文心一言开发的一系列AI应用和服务

技术特点

大规模参数量:具备强大的语言理解和生成能力
多模态支持:支持文本、图像、语音等多种模态的处理
持续迭代优化:通过不断训练和优化提升模型性能

应用场景

智能客服:提供自然语言对话能力
内容创作:辅助撰写文章、文案等文本内容
知识问答:回答各种领域知识问题
代码生成:根据自然语言描述生成代码

技术优势

中文处理能力强:针对中文语境进行了专门优化
产业结合:与百度搜索、百度地图等产品深度整合
开放平台:提供API接口供开发者使用
不过需要说明的是,作为阿里云开发的智能助手,我主要专注于提供代码相关的帮助和服务

模型介绍

模型 介绍
ERNIE-4.0-8K 百度自研的旗舰级超大规模⼤语⾔模型,相较ERNIE 3.5实现了模型能力全面升级,广泛适用于各领域复杂任务场景;支持自动对接百度搜索插件,保障问答信息时效。 百度文心系列中效果最强大的⼤语⾔模型,理解、生成、逻辑、记忆能力达到业界顶尖水平。
ERNIE-4.0-8K-Preview 百度自研的旗舰级超大规模⼤语⾔模型,相较ERNIE 3.5实现了模型能力全面升级,广泛适用于各领域复杂任务场景;支持自动对接百度搜索插件,保障问答信息时效。
ERNIE-4.0-8K-Latest ERNIE-4.0-8K-Latest相比ERNIE-4.0-8K能力全面提升,其中角色扮演能力和指令遵循能力提升较大;相较ERNIE 3.5实现了模型能力全面升级,广泛适用于各领域复杂任务场景;支持自动对接百度搜索插件,保障问答信息时效,支持5K tokens输入+2K tokens输出。
ERNIE-4.0-8K-0613 百度自研的旗舰级超大规模⼤语⾔模型,相较ERNIE 3.5实现了模型能力全面升级,广泛适用于各领域复杂任务场景;支持自动对接百度搜索插件,保障问答信息时效,支持5K tokens输入+2K tokens输出。
ERNIE-4.0-Turbo-8K ERNIE 4.0 Turbo是百度自研的旗舰级超大规模⼤语⾔模型,综合效果表现出色,广泛适用于各领域复杂任务场景;支持自动对接百度搜索插件,保障问答信息时效。相较于ERNIE 4.0在性能表现上更优秀。ERNIE-4.0-Turbo-8K是模型的一个版本。
ERNIE-4.0-Turbo-8K-Preview ERNIE 4.0 Turbo是百度自研的旗舰级超大规模⼤语⾔模型,综合效果表现出色,广泛适用于各领域复杂任务场景;支持自动对接百度搜索插件,保障问答信息时效。相较于ERNIE 4.0在性能表现上更优秀。ERNIE-4.0-Turbo-8K-Preview是模型的一个版本。
ERNIE-4.0-Turbo-8K-Latest ERNIE 4.0 Turbo是百度自研的旗舰级超大规模⼤语⾔模型,综合效果表现出色,广泛适用于各领域复杂任务场景;支持自动对接百度搜索插件,保障问答信息时效。相较于ERNIE 4.0在性能表现上更优秀。ERNIE-4.0-Turbo-8K-Latest是模型的一个版本。
ERNIE-4.0-Turbo-8K-0628 ERNIE 4.0 Turbo是百度自研的旗舰级超大规模⼤语⾔模型,综合效果表现出色,广泛适用于各领域复杂任务场景;支持自动对接百度搜索插件,保障问答信息时效。相较于ERNIE 4.0在性能表现上更优秀。ERNIE-4.0-Turbo-8K-0628是模型的一个版本。
ERNIE-4.0-Turbo-128K ERNIE 4.0 Turbo是百度自研的旗舰级超大规模⼤语⾔模型,综合效果表现出色,广泛适用于各领域复杂任务场景;支持自动对接百度搜索插件,保障问答信息时效。相较于ERNIE 4.0在性能表现上更优秀。ERNIE-4.0-Turbo-128K是模型的一个版本。
ERNIE-3.5-8K 百度自研的旗舰级大规模⼤语⾔模型,覆盖海量中英文语料,具有强大的通用能力,可满足绝大部分对话问答、创作生成、插件应用场景要求;支持自动对接百度搜索插件,保障问答信息时效。
ERNIE-3.5-8K-Preview 百度自研的旗舰级大规模⼤语⾔模型,覆盖海量中英文语料,具有强大的通用能力,可满足绝大部分对话问答、创作生成、插件应用场景要求;支持自动对接百度搜索插件,保障问答信息时效。此版本为ERNIE-3.5-8K模型的预览版本,指向最新版本模型。
ERNIE-3.5-128K ERNIE 3.5是百度自研的旗舰级大规模⼤语⾔模型,覆盖海量中英文语料,具有强大的通用能力,可满足绝大部分对话问答、创作生成、插件应用场景要求;支持自动对接百度搜索插件,保障问答信息时效。ERNIE-3.5-128K是模型的一个版本,2024年5月16日发布,提升上下文窗口长度至128K。
ERNIE-3.5-128K-Preview ERNIE 3.5是百度自研的旗舰级大规模⼤语⾔模型,覆盖海量中英文语料,具有强大的通用能力,可满足绝大部分对话问答、创作生成、插件应用场景要求;支持自动对接百度搜索插件,保障问答信息时效。ERNIE-3.5-128K-Preview是模型的预览版本。
ERNIE-3.5-8K-0613 百度自研的旗舰级大规模⼤语⾔模型,覆盖海量中英文语料,具有强大的通用能力,可满足绝大部分对话问答、创作生成、插件应用场景要求;支持自动对接百度搜索插件,保障问答信息时效。2024年6月13日发布版本,该模型版本在信息处理、代码能力、知识问答、多轮会话等均有提升。
ERNIE-3.5-8K-0701 百度自研的旗舰级大规模⼤语⾔模型,覆盖海量中英文语料,具有强大的通用能力,可满足绝大部分对话问答、创作生成、插件应用场景要求;支持自动对接百度搜索插件,保障问答信息时效。2024年7月1日发布版本,能力全面升级,尤其数学计算、逻辑推理能力提升显著。
ERNIE-Speed-Pro-128K 百度2024年最新发布的自研高性能大语言模型,通用能力优异,适合作为基座模型进行精调,更好地处理特定场景问题,同时具备极佳的推理性能。2024年8月30日发布的初始版本,支持128K上下文长度,效果比ERNIE-Speed-128K更优。
ERNIE-Speed-8K 百度2024年最新发布的自研高性能大语言模型,通用能力优异,适合作为基座模型进行精调,更好地处理特定场景问题,同时具备极佳的推理性能。2024年2月5日发布的初始版本,支持8K上下文长度。
ERNIE-Speed-128K 百度2024年最新发布的自研高性能大语言模型,通用能力优异,适合作为基座模型进行精调,更好地处理特定场景问题,同时具备极佳的推理性能。2024年3月14日发布版本,提升上下文窗口长度至128K。
ERNIE-Character-8K 百度自研的垂直场景大语言模型,适合游戏NPC、客服对话、对话角色扮演等应用场景,人设风格更为鲜明、一致,指令遵循能力更强,推理性能更优。
ERNIE-Character-Fiction-8K 百度自研的垂直场景大语言模型,适合游戏NPC、客服对话、对话角色扮演等应用场景,人设风格更为鲜明、一致,指令遵循能力更强,推理性能更优。
ERNIE-Character-Fiction-8K-Preview 百度自研的垂直场景大语言模型,适合游戏NPC、客服对话、对话角色扮演等应用场景,人设风格更为鲜明、一致,指令遵循能力更强,推理性能更优。ERNIE-Character-Fiction-8K-Preview是2024年10月28日发布的版本,在深度扮演能力、剧情创意度等方面能力得到增强,场景更加丰富。
ERNIE-Lite-8K 百度自研的轻量级大语言模型,兼顾优异的模型效果与推理性能,适合低算力AI加速卡推理使用。
ERNIE-Lite-8K-0725 百度自研的轻量级大语言模型,兼顾优异的模型效果与推理性能,适合低算力AI加速卡推理使用。该模型版本是2023年7月25日发布版本,新增推理超参数,提升上下文窗口长度至8K
ERNIE-Lite-4K-0704 百度自研的轻量级大语言模型,兼顾优异的模型效果与推理性能,适合低算力AI加速卡推理使用。该模型版本是2023年7月4日发布版本,优化推理效果,修复部分问题,支持4K上下文长度。
ERNIE-Lite-4K-0516 百度自研的轻量级大语言模型,兼顾优异的模型效果与推理性能,适合低算力AI加速卡推理使用。该模型版本是2023年5月16日发布的初始版本,支持4K上下文长度。
ERNIE-Lite-128K-0419 百度自研的轻量级大语言模型,兼顾优异的模型效果与推理性能,适合低算力AI加速卡推理使用。该模型版本是2024年4月19日发布版本,优化模型效果,支持128K上下文长度。
ERNIE-Lite-128K-0722 百度自研的轻量级大语言模型,兼顾优异的模型效果与推理性能,适合低算力AI加速卡推理使用。2024年7月22日发布版本,支持128K上下文长度。
ERNIE-Lite-Pro-128K 百度自研的轻量级大语言模型,效果比ERNIE Lite更优,兼顾优异的模型效果与推理性能,适合低算力AI加速卡推理使用。该版本优化模型效果,支持128K上下文长度,效果比ERNIE-Lite-128K更优。
ERNIE-Functions-8K-0321 百度自研的垂直场景大语言模型,适合对话问答中的外部工具使用和业务函数调用场景,结构化回答合成能力更强、输出格式更稳定,推理性能更优。
ERNIE-Tiny-8K 百度自研的超高性能大语言模型,部署与精调成本在文心系列模型中最低。
ERNIE-Tiny-128K-0929 百度自研的超高性能大语言模型,部署与精调成本在文心系列模型中最低。ERNIE-Tiny-128k-0929是2024年9月29日发布的版本,支持128K上下文长度。
ERNIE-Novel-8K 百度自研通用大语言模型,在小说续写能力上有明显优势,也可用在短剧、电影等场景。2024年8月2日首次发布的版本,百度自研通用大语言模型,在小说续写能力上有明显优势,也可用在短剧、电影等场景。
Qianfan-Agent-Speed-8K 千帆自研Agent专用版模型,针对企业级大模型应用进行了专门的指令调优,在问答场景、智能体相关场景可以获得同等规模模型下更好的效果。2024年11月21日发布的版本,支持8K上下文长度。
Qianfan-Agent-Speed-32K Qianfan Agent是百度自研Agent专用版模型,针对企业级大模型应用进行了专门的指令调优,在问答场景、智能体相关场景可以获得同等规模模型下更好的效果。2025年1月2号发布的版本,支持32K上下文长度。
Qianfan-Agent-Lite-8K 千帆自研Agent专用版模型,针对企业级大模型应用进行了专门的指令调优,在问答场景、智能体相关场景可以获得同等规模模型下更好的效果。2024年11月21日发布的版本,支持8K上下文长度。
Gemma-2B-it Google 开发的一系列轻量级、尖端的开源文本生成模型,采用与 Gemini 模型相同的技术构建,适合用于各种文本生成任务,能够在资源量较小的端侧设备部署。该版本为20亿参数的指令微调版本。
Mistral-7B-Instruct 由Mistral AI研发并开源的7B参数大语言模型,具备强大的推理性能和效果,对硬件需求更少、在各项评测基准中超越同规模模型。该版本为Mistral-7B-v0.1基础上的微调版本。
Meta-Llama-3-8B-Instruct Meta-Llama-3-8B是Meta AI于2024年4月18日发布的Meta Llama 3系列8B参数大语言模型,擅长语言细微差别、上下文理解、代码生成以及翻译和对话生成等复杂任务。Meta-Llama-3-8B-Instruct是8B参数的指令微调版本,适用于对话场景,在常见行业基准上优于许多可用的开源聊天模型。
Meta-Llama-3-70B-Instruct Meta-Llama-3-70B是Meta AI于2024年4月18日发布的Meta Llama 3系列70B参数大语言模型,擅长语言细微差别、上下文理解、代码生成以及翻译和对话生成等复杂任务。Meta-Llama-3-70B-Instruct是70B参数的指令微调版本,适用于对话场景,在理解语言细节、上下文和执行复杂任务上表现更佳。
Qianfan-Chinese-Llama-2-7B-32K 千帆ModelBuilder团队在Qianfan-Chinese-Llama-2-7B基础上的增强版本,支持32K上下文。
Qianfan-Chinese-Llama-2-13B-v2 千帆ModelBuilder团队基于Llama2架构开发的130亿参数预训练大语言模型,在1T+ tokens的高质量自有语料上从零开始训练,支持中英双语,上下文窗口长度为4K。推理效果整体优于同参数量级开源模型。
Qianfan-Chinese-Llama-2-13B-v1 千帆ModelBuilder团队在Llama-2-13b基础上的中文增强版本,在CMMLU、C-EVAL等中文数据集上表现优异。
Qianfan-Llama-2-70B-compressed 千帆ModelBuilder团队在Llama-2-70B基础上的压缩版本,融合量化、稀疏化、算子优化等压缩加速技术,大幅降低模型推理资源占用。
Linly-Chinese-LLaMA-2-7B 由深圳大学CV研究所Linly项目进行中文增强训练的Llama-2 7b参数版本。
Linly-Chinese-LLaMA-2-13B 由深圳大学CV研究所Linly项目进行中文增强训练的Llama-2 13b参数版本。
Qianfan-Chinese-Llama-2-1.3B 由千帆ModelBuilder团队基于Llama2架构开发的13亿参数预训练大语言模型,在1T+ tokens的高质量自有语料上从零开始训练,支持中英双语,上下文窗口长度为4K。推理效果整体优于同参数量级开源模型。
ChatGLM3-6B-32K 智谱AI与清华KEG实验室发布的中英双语对话模型,在ChatGLM3-6B的基础上进一步强化了对于长文本的理解能力,能够更好的处理最多32K长度的上下文。
ChatGLM3-6B 智谱AI与清华KEG实验室发布的中英双语对话模型,相比前两代,具备更强大的基础模型,同时原生支持工具调用(Function Call)、代码执行(Code Interpreter)和 Agent 任务等复杂场景。
ChatGLM2-6B 智谱AI与清华KEG实验室发布的中英双语对话模型,具备强大的推理性能、效果、较低的部署门槛及更长的上下文,在MMLU、CEval等数据集上相比初代有大幅的性能提升。
ChatGLM2-6B-INT4 在ChatGLM2-6B的基础上进行INT4 量化,6G 显存支持的对话长度由 1K 提升到了 8K。
Baichuan2-7B-Chat 是百川智能推出的新一代开源大语言模型,采用2.6万亿Tokens的高质量语料训练,在权威的中文和英文 benchmark 上均取得同尺寸领先的效果。该版本为70亿参数规模的Chat版本。
Baichuan2-13B-Chat Baichuan 2 是百川智能推出的新一代开源大语言模型,采用2.6万亿Tokens的高质量语料训练,在权威的中文和英文 benchmark 上均取得同尺寸领先的效果。该版本为130亿参数规模的Chat版本。
XVERSE-13B-Chat XVERSE-13B-Chat是由深圳元象科技自主研发的支持多语言的大语言模型,支持8k上下文、40多种语言,具备训练效率高、稳定性强、算力利用率高等特点。该版本为130亿参数规模的Chat版本。
DISC-MedLLM DISC-MedLLM是一个专门针对医疗健康对话式场景而设计的医疗领域大模型,由复旦大学数据智能与社会计算实验室 (Fudan-DISC)开发并开源。
Falcon-7B 由TII研发、在精选语料库增强的1500B tokens上进行训练。由OpenBuddy调优并开源,提升了处理复杂对话任务的能力与表现。
Falcon-40B-Instruct 由TII研发的仅使用解码器的模型,并在Baize的混合数据集上进行微调,具备优异的推理效果。
RWKV-4-World 由香港大学物理系校友彭博研发并开源,结合了Transformer与RNN的优点,具备优秀的推理性能与效果。RWKV-4-World在100多种语言上进行训练,具备优秀的英语零样本与上下文学习能力。
RWKV-4-pile-14B 由香港大学物理系校友彭博研发并开源,结合了Transformer与RNN的优点,具备优秀的推理性能与效果。RWKV-4-pile-14B为在 Pile 数据集上训练的 L40-D5120 因果语言模型。
RWKV-Raven-14B 由香港大学物理系校友彭博研发并开源,结合了Transformer与RNN的优点,具备优秀的推理性能与效果。RWKV-Raven-14B为在Pile数据集上训练,并在Alpaca、CodeAlpaca等上进行微调的Chat版本。
OpenLLaMA-7B 在Meta AI研发的Llama模型基础上,OpenBuddy进行调优,涵盖了更广泛的词汇、通用字符与token嵌入,具备与Llama相当的性能与推理效果。
Dolly-12B 由Databricks训练的指令遵循大语言模型。基于pythia-12b,由InstructGPT论文的能力域中生成的约15k指令/响应微调记录训练。
MPT-7B-Instruct MPT-7B-Instruct是一种短格式指令遵循模型,由MosaicML研发,基于MPT-7B模型在Databricks Dolly-15k、HH-RLHF数据集上调优的版本,采用经过修改的仅使用解码器的transformer架构。
MPT-30B-instruct MPT-30M-Instruct是一种短格式指令遵循模型,由MosaicML研发,基于MPT-7B模型在更为丰富的数据集上调优的版本,采用经过修改的仅使用解码器的transformer架构。
OA-Pythia-12B-SFT-4 基于Pythia12B,Open-Assistant项目的第4次SFT迭代模型。该模型在https://open-assistant.io/收集的人类反馈的对话数据上进行微调。

JavaSDK调用

安装Java SDK

注意:需要Java 8及以后版本。

  • Maven

    <dependency>
        <groupId>com.openai</groupId>
        <artifactId>openai-java</artifactId>
        <version>0.22.0</version> # 按需更新版本号
    </dependency>
    

调用示例

非流式

  • 请求示例
import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.ChatCompletion;
import com.openai.models.ChatCompletionCreateParams;
import com.openai.models.ChatCompletionUserMessageParam;

public class main {
    public static void main(String[] args) {
        OpenAIClient client = OpenAIOkHttpClient.builder()
                .apiKey("your_APIKey") //将your_APIKey替换为真实值,如何获取API Key请查看https://cloud.baidu.com/doc/WENXINWORKSHOP/s/Um2wxbaps#步骤二-获取api-key
                .baseUrl("https://qianfan.baidubce.com/v2/") //千帆ModelBuilder平台地址
                .build();

        ChatCompletionCreateParams params = ChatCompletionCreateParams.builder()
                .addUserMessage("你好") // 对话messages信息
                .model("ernie-tiny-8k") // 模型对应的model值,请查看支持的模型列表:https://cloud.baidu.com/doc/WENXINWORKSHOP/s/wm7ltcvgc
                .build();

        ChatCompletion chatCompletion = client.chat().completions().create(params);
        System.out.println(chatCompletion.choices().get(0).message().content());
    }
}

流式

  • 请求示例

    import com.openai.client.OpenAIClient;
    import com.openai.client.okhttp.OpenAIOkHttpClient;
    import com.openai.core.http.StreamResponse;
    import com.openai.models.ChatCompletionChunk;
    import com.openai.models.ChatCompletionCreateParams;
    import com.openai.models.ChatCompletionUserMessageParam;
    
    import java.util.function.Consumer;
    
    public class main {
        public static void main(String[] args) {
            OpenAIClient client = OpenAIOkHttpClient.builder()
                    .apiKey("your_APIKey") //将your_APIKey替换为真实值,如何获取API Key请查看https://cloud.baidu.com/doc/WENXINWORKSHOP/s/Um2wxbaps#步骤二-获取api-key
                    .baseUrl("https://qianfan.baidubce.com/v2/") //千帆ModelBuilder平台地址
                    .build();
    
            ChatCompletionCreateParams params = ChatCompletionCreateParams.builder()
                    .addUserMessage("你好") // 对话messages信息
                    .model("ernie-tiny-8k") // 模型对应的model值,请查看支持的模型列表:https://cloud.baidu.com/doc/WENXINWORKSHOP/s/wm7ltcvgc
                    .build();
    
            StreamResponse<ChatCompletionChunk> chatCompletion = client.chat().completions().createStreaming(params);
            Consumer<ChatCompletionChunk> consumer = s -> System.out.println(s.choices().get(0).delta().content());
            chatCompletion.stream().forEach(consumer);
        }
    }
    

自定义 Headers 与自定义 Body 参数

  • 请求示例

    import com.openai.client.OpenAIClient;
    import com.openai.client.okhttp.OpenAIOkHttpClient;
    import com.openai.core.JsonValue;
    import com.openai.models.ChatCompletionCreateParams;
    import com.openai.models.ChatCompletion;
    import java.util.HashMap;
    import java.util.Map;
    
    public class Main {
        public static void main(String[] args) {
            OpenAIClient client = OpenAIOkHttpClient.builder()
                    .apiKey("your_APIKey") //将your_APIKey替换为真实值,如何获取API Key请查看https://cloud.baidu.com/doc/WENXINWORKSHOP/s/Um2wxbaps#步骤二-获取api-key
                    .baseUrl("https://qianfan.baidubce.com/v2/") //千帆ModelBuilder平台地址
                    .build();
    
            Map<String, String> safetyMap = new HashMap<>();
            safetyMap.put("input_level", "standard");
    
            Map<String, Boolean> websearchMap = new HashMap<>();
            websearchMap.put("enable", true);
            websearchMap.put("enable_trace", true);
    
    
            // 创建一个 HashMap 来表示整个 JSON 对象
            Map<String, Map<String, String>> extraDataMap = new HashMap<>();
            extraDataMap.put("safety", safetyMap);
    
            ChatCompletionCreateParams params = ChatCompletionCreateParams.builder()
                    .addUserMessage("今天上海天气怎么样") // 对话messages信息
                    .model("ernie-3.5-8k") //模型对应的model值,请查看支持的模型列表:https://cloud.baidu.com/doc/WENXINWORKSHOP/s/wm7ltcvgc
                    .putAdditionalBodyProperty("safety", JsonValue.from(safetyMap))
                    .putAdditionalBodyProperty("web_search", JsonValue.from(websearchMap))
                    .putAdditionalHeader("appid", "app-xxxxxxxx")
                    .build();
    
            ChatCompletion chatCompletion = client.chat().completions().create(params);
            System.out.println(chatCompletion.choices().get(0).message().content());
        }
    }
    
posted @ 2025-08-16 20:43  mz456  阅读(72)  评论(0)    收藏  举报