【langchain4j】结构化输出(六)

结构化输出:是将大模型返回的文本信息转化为结构型数据,例如json,对象等。

实现方式3种:

1.利用prompt

2.prompt+json mode

3.大模型等JSON Schema

langchain4j官网文档位置

java 复制代码
public interface AiCodeService {

    @SystemMessage(fromResource = "ai.txt")
    Report chatForReportWithMemoryId(@MemoryId String memoryId, @UserMessage String userMessage);

    // 定义一个类:学习报告
    record Report(String name, List<String> suggestionList) {
    };

}



    @Test
    void chatForReportWithMemoryId() {
        String user1 = "user-001";
        AiCodeService.Report report = aiCodeService.chatForReportWithMemoryId(user1, "你好,我是程序员吴彦祖");
        System.out.println("report = " + report);
    }
相关推荐
2601_962128419 小时前
SpringBoot篇(缓存层)
java·spring boot·缓存
hongmai6668889 小时前
MP2348GTL-Z:这颗24V/4A同步降压芯片,把性能和体积平衡得恰到好处
c语言·开发语言·arm开发·单片机·5g
多弗朗皮卡丘9 小时前
C语言梦开始的地方19:文件操作
c语言·开发语言
Dovis(誓平步青云)9 小时前
折叠屏悬停看视频,上半屏和下半屏应该各做什么
android·java·服务器·开发语言·安全·音视频
benchmark_cc10 小时前
Python量化实战:如何检测并剔除历史数据中的“闪崩/乌龙指”异常价格点?
开发语言·人工智能·python·量化·quantdash·量化数据源
2501_9378609410 小时前
Java多线程初阶(下)—— synchronized、volatile、wait/notify与经典并发工具
java·开发语言·jvm
笨笨饿10 小时前
#135_代码中的类型重定义艺术:从基础封装到函数类型设计
开发语言·stm32·单片机·嵌入式硬件·mcu·物联网·嵌入式实时数据库
统计学小王子10 小时前
R语言入门——ggplot2图例增加公式
开发语言·r语言
牛油果子哥q10 小时前
C++内存池与对象池精讲:内存碎片、自定义分配器、对象池实现、STL allocator原理、工程落地与性能对比
java·开发语言·c++
CodeStats10 小时前
《源纹天书》第三百六十三章至第三百六十四章
java·开发语言·源纹天书