当前位置: 首页 > news >正文

LangChain4j 1.x 核心源码剖析-基础篇

文章目录

  • 概述
  • 核心源码讲解
  • Chain
    • ConversationalChain
    • ConversationalRetrievalChain
  • ChatModel
    • DisabledChatModel
    • StreamingChatModel
    • DisabledStreamingChatModel
    • StreamingChatResponseHandler
    • ChatModelListener
    • ChatModelRequestContext
    • ChatModelResponseContext
    • ChatRequestParameters
    • DefaultChatRequestParameters
    • ChatResponseMetadata
  • LanguageModel
    • StreamingLanguageModel
  • ModerationModel
    • @Moderate
  • ImageModel
  • ScoringModel
  • ChatMemory
    • @MemoryId
    • ChatMemoryProvider
    • ChatMemoryAccess
  • AiServices
  • TextClassifier
  • ToolExecutor
    • ToolExecutionRequest
    • ToolProvider
    • ToolProviderRequest
    • ToolProviderResult
  • TokenStream
  • Input
    • PromptTemplate
    • @StructuredPrompt
  • Output
    • OutputParser
    • @Description
    • Result
    • Response
    • LambdaStreamingResponseHandler
    • TokenCountEstimator
  • TextSegment
    • TextSegmentTransformer
  • RetrievalAugmentor
    • DefaultRetrievalAugmentor
    • Query
    • Content
    • ContentAggregator
    • ContentInjector
    • ContentRetriever
  • EmbeddingModel
    • DimensionAwareEmbeddingModel
    • DisabledEmbeddingModel
    • EmbeddingModelFactory
    • EmbeddingModelTextClassifier
  • EmbeddingStore
  • WebSearchEngine
  • 核心注解
    • @SystemMessage
    • @UserMessage
    • @UserName
    • @V
    • @P
    • @Tool
    • @ToolMemoryId
    • @Internal

概述

本文将详细剖析讲解LangChain4j框架各核心API类库,源码的版本为1.0.1

核心源码讲解

Chain

表示接受输入并产生输出的链式步骤。链不打算进一步开发,建议使用AiServices代替。

ConversationalChain

与指定的{@link ChatModel}进行会话的链,同时维护会话的内存。包含一个默认的{@link ChatMemory}(一个最多10条消息的消息窗口),可以被覆盖。链不打算进一步开发,建议使用{@link AiServices}代替。

ConversationalRetrievalChain

基于指定{@link ContentRetriever}检索的信息与指定{@link ChatModel} 进行对话的链。包含一个默认的{@link ChatMemory}(一个最多10条消息的消息窗口),可以被覆盖。您可以通过提供{@link RetrievalAugmentor}的实例来完全自定义RAG行为,例如{@link DefaultRetrievalAugmentor

相关文章:

  • 【项目实训项目博客】用户使用手册
  • Secs/Gem第十二讲(基于secs4net项目的ChatGpt介绍)
  • 【第四十八周】HippoRAG 2 复现与分析(二):索引阶段代码分析
  • 嵌入式学习笔记 - freeRTOS为什么中断中不能使用互斥量
  • 使用自定义模板的方式批量切割图片。
  • 从零开始编写Mcp Server,发布上线,超简单极速入门
  • Amazon RDS on AWS Outposts:解锁本地化云数据库的混合云新体验
  • 循环神经网络(RNN):从理论到翻译
  • 标准代码项目开发流程学习指南
  • leetcode Top100 238. 除自身以外数组的乘积|数组系列
  • 【Ragflow】27.RagflowPlus(v0.4.1):小版本迭代,问题修复与功能优化
  • 高保真组件库:单选复选
  • 为什么需要Redis分布式锁?在哪些微服务场景下会用到?
  • 【C/C++】namespace + macro混用场景
  • 解决SQL Server SQL语句性能问题(9)——SQL语句改写(2)
  • gitee....
  • split方法
  • 如果在main中抛出异常,该如何处理
  • 2.1.3_1 编码和调制(上)
  • 联邦学习在各领域的落地应用
  • 广州企业推广网站建设/北京seo软件
  • 开发建设网站多久/网站注册账号
  • 槐荫区城乡建设委员会网站/中国疫情最新消息
  • 营销型和展示型网站/百度站长管理平台
  • 深圳福田有哪些公司/推广优化网站排名
  • 淮阳住房城乡建设局网站/广西seo