首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的DocumentParser

    序本文主要研究一下Spring AI Alibaba的DocumentParserDocumentParserspring-ai-alibaba-core/src/main/java/com/alibaba ,它有TextDocumentParser、JsonDocumentParser等实现TextDocumentParserspring-ai-alibaba-core/src/main/java/com /alibaba/cloud/ai/document/TextDocumentParser.javapublic class TextDocumentParser implements DocumentParser AI Alibaba定义了com.alibaba.cloud.ai.document.DocumentParser,然后部分org.springframework.ai.document.DocumentReader spring-ai-alibaba-core默认提供了TextDocumentParser、JsonDocumentParser这两种DocumentParser。docjava2ai

    27100编辑于 2025-04-15
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的PdfTablesParser

    序本文主要研究一下Spring AI Alibaba的PdfTablesParserPdfTablesParsercommunity/document-parsers/spring-ai-alibaba-starter-document-parser-pdf-tables /src/main/java/com/alibaba/cloud/ai/parser/pdf/tables/PdfTablesParser.javapublic class PdfTablesParser StringBuilder();docs.forEach(doc -> sb.append(doc.getText() + "\n"));Assert.equals(res, sb.toString());}}小结Spring AI Alibabaspring-ai-alibaba-starter-document-parser-pdf-tables提供了PdfTablesParser用于解析pdf文件中的表格数据到Document

    36900编辑于 2025-04-17
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的ElasticsearchDocumentReader

    序本文主要研究一下Spring AI Alibaba的ElasticsearchDocumentReaderElasticsearchDocumentReadercommunity/document-readers /spring-ai-alibaba-starter-document-reader-elasticsearch/src/main/java/com/alibaba/cloud/ai/document/ matches = ".+")public class ElasticsearchDocumentReaderTest {private static final String TEST_INDEX = "spring-ai-test index to make documents searchableclient.indices().refresh();}}这里ElasticsearchConfig指定了读取content字段小结spring-ai-alibaba-starter-document-reader-elasticsearch docjava2ai

    21800编辑于 2025-04-19
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的MySQLDocumentReader

    序本文主要研究一下Spring AI Alibaba的MySQLDocumentReaderMySQLDocumentReadercommunity/document-readers/spring-ai-alibaba-starter-document-reader-mysql /src/main/java/com/alibaba/cloud/ai/reader/mysql/MySQLDocumentReader.javapublic class MySQLDocumentReader query,将字段名与值通过:拼接在一起作为内容,根据metadataColumns来将自定字段的值作为metadataMySQLResourcecommunity/document-readers/spring-ai-alibaba-starter-document-reader-mysql /src/main/java/com/alibaba/cloud/ai/reader/mysql/MySQLResource.javapublic class MySQLResource {// MySQL invalidResource);// Should throw RuntimeExceptionassertThrows(RuntimeException.class, invalidReader::get);}}小结spring-ai-alibaba-starter-document-reader-mysql

    21400编辑于 2025-04-21
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的NotionDocumentReader

    序本文主要研究一下Spring AI Alibaba的NotionDocumentReaderNotionDocumentReadercommunity/document-readers/spring-ai-alibaba-starter-document-reader-notion /src/main/java/com/alibaba/cloud/ai/reader/notion/NotionDocumentReader.javapublic class NotionDocumentReader created_by的id、name、last_edited_by的id、name、url、parent、icon、cover信息NotionResourcecommunity/document-readers/spring-ai-alibaba-starter-document-reader-notion 通过请求/databases/databaseId/query来查询,之后解析results读取properties及plain_text信息示例community/document-readers/spring-ai-alibaba-starter-document-reader-notion document.getText();assertThat(content).isNotEmpty();System.out.println("Database content: " + content);}}小结spring-ai-alibaba-starter-document-reader-notion

    16900编辑于 2025-04-22
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的RedisChatMemory

    序本文主要研究一下Spring AI Alibaba的RedisChatMemoryRedisChatMemorycommunity/memories/spring-ai-alibaba-redis-memory LoggerFactory.getLogger(RedisChatMemory.class); private static final String DEFAULT_KEY_PREFIX = "spring_ai_alibaba_chat_memory ; } } public void updateMessageById(String conversationId, String messages) { String key = "spring_ai_alibaba_chat_memory 类型的MessageDeserializer;其add方法遍历messages挨个序列化为json然后rpush到spring_ai_alibaba_chat_memory{conversationId ,再反序列化为message对象;其clear方法直接删除该key;close方法则先关闭jedis再关闭jedisPoolMessageDeserializercommunity/memories/spring-ai-alibaba-redis-memory

    70510编辑于 2025-04-27
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的MermaidGenerator

    序 本文主要研究一下Spring AI Alibaba的MermaidGenerator MermaidGenerator spring-ai-alibaba-graph/spring-ai-alibaba-graph-core /src/main/java/com/alibaba/cloud/ai/graph/diagram/MermaidGenerator.java public class MermaidGenerator doc spring-ai-alibaba

    25300编辑于 2025-05-01
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的ElasticsearchDocumentReader

    序 本文主要研究一下Spring AI Alibaba的ElasticsearchDocumentReader ElasticsearchDocumentReader community/document-readers /spring-ai-alibaba-starter-document-reader-elasticsearch/src/main/java/com/alibaba/cloud/ai/document/ = ".+") public class ElasticsearchDocumentReaderTest { private static final String TEST_INDEX = "spring-ai-test make documents searchable client.indices().refresh(); } } 这里ElasticsearchConfig指定了读取content字段 小结 spring-ai-alibaba-starter-document-reader-elasticsearch doc java2ai

    28210编辑于 2025-04-21
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的ObsidianDocumentReader

    序本文主要研究一下Spring AI Alibaba的ObsidianDocumentReaderObsidianDocumentReadercommunity/document-readers/spring-ai-alibaba-starter-document-reader-obsidian ObsidianResource,之后遍历resources使用MarkdownDocumentParser进行解析ObsidianResourcecommunity/document-readers/spring-ai-alibaba-starter-document-reader-obsidian /src/main/java/com/alibaba/cloud/ai/reader/obsidian/ObsidianResource.javapublic class ObsidianResource 构造器要求输入vaultPath和filePath,其findAllMarkdownFiles方法会遍历vaultPath目录,找出.md结尾的文件示例community/document-readers/spring-ai-alibaba-starter-document-reader-obsidian category"));}System.out.println("Document content: " + doc.getText());System.out.println("---");}}}小结spring-ai-alibaba-starter-document-reader-obsidian

    14400编辑于 2025-04-23
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的JdbcChatMemory

    序本文主要研究一下Spring AI Alibaba的JdbcChatMemoryJdbcChatMemorycommunity/memories/spring-ai-alibaba-jdbc-memory MysqlChatMemorycommunity/memories/spring-ai-alibaba-jdbc-memory/src/main/java/com/alibaba/cloud/ai/memory tableName); }}SQLiteChatMemory继承了JdbcChatMemory,其jdbcType为sqliteSqlServerChatMemorycommunity/memories/spring-ai-alibaba-jdbc-memory MysqlChatMemory chatMemory = new MysqlChatMemory("root", "123456", "jdbc:mysql://127.0.0.1:3306/spring_ai_alibaba_chat_memory .content(); System.out.println(content2); Assertions.assertTrue(content2.contains("张三")); }小结spring-ai-alibaba-jdbc-memory

    50110编辑于 2025-04-28
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的YoutubeDocumentReader

    序 本文主要研究一下Spring AI Alibaba的YoutubeDocumentReader YoutubeDocumentReader community/document-readers/spring-ai-alibaba-starter-document-reader-youtube /src/main/java/com/alibaba/cloud/ai/reader/youtube/YoutubeDocumentReader.java public class YoutubeDocumentReader v=videoId,之后解析html内容获取videoDetails内容,再json解析提取language、subtitleText 示例 community/document-readers/spring-ai-alibaba-starter-document-reader-youtube /src/test/java/com/alibaba/cloud/ai/reader/youtube/YoutubeDocumentReaderTest.java public class YoutubeDocumentReaderTest Document> documents = youtubeDocumentReader.get(); logger.info("documents: {}", documents); } } 小结 spring-ai-alibaba-starter-document-reader-youtube

    15400编辑于 2025-04-26
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的MarkdownDocumentParser

    序本文主要研究一下Spring AI Alibaba的MarkdownDocumentParserMarkdownDocumentParsercommunity/document-parsers/spring-ai-alibaba-starter-document-parser-markdown /src/main/java/com/alibaba/cloud/ai/parser/markdown/MarkdownDocumentParser.javapublic class MarkdownDocumentParser /mvnw spring-javaformat:apply\n");});}@Testvoid testCodeWhenCodeBlockShouldNotBeSeparatedDocument() throws AI Alibabaspring-ai-alibaba-starter-document-parser-markdown提供了MarkdownDocumentParser用于解析markdown文件到 docjava2ai

    31210编辑于 2025-04-16
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的OneNoteDocumentReader

    序本文主要研究一下Spring AI Alibaba的OneNoteDocumentReaderOneNoteDocumentReadercommunity/document-readers/spring-ai-alibaba-starter-document-reader-onenote resourceType构建不同的请求uri,请求之后提取createdTime、lastModifiedTime、contentURLOneNoteResourcecommunity/document-readers/spring-ai-alibaba-starter-document-reader-onenote OneNoteResource主要是定义了NOTEBOOK, SECTION, PAGE这三种resourceType以及resourceId示例community/document-readers/spring-ai-alibaba-starter-document-reader-onenote // Verify content String content = document.getText(); assertThat(content).isNotEmpty(); }}小结spring-ai-alibaba-starter-document-reader-onenote docjava2ai

    24500编辑于 2025-04-24
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的YuQueDocumentReader

    序本文主要研究一下Spring AI Alibaba的YuQueDocumentReaderYuQueDocumentReadercommunity/document-readers/spring-ai-alibaba-starter-document-reader-yuque /src/main/java/com/alibaba/cloud/ai/reader/yuque/YuQueDocumentReader.javapublic class YuQueDocumentReader DocumentParser,其get方法通过DocumentParser解析,最后在其metadata追加一个SOURCEYuQueResourcecommunity/document-readers/spring-ai-alibaba-starter-document-reader-yuque 到inputStream;其中groupLogin、bookSlug、id是judgePathRule通过解析resourcePath提取出来示例community/document-readers/spring-ai-alibaba-starter-document-reader-yuque = reader.get(); String content = document.get(0).getText(); System.out.println(content); }}小结spring-ai-alibaba-starter-document-reader-yuque

    27100编辑于 2025-04-26
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的FeiShuDocumentReader

    序本文主要研究一下Spring AI Alibaba的FeiShuDocumentReaderFeiShuDocumentReadercommunity/document-readers/spring-ai-alibaba-starter-document-reader-larksuite /src/main/java/com/alibaba/cloud/ai/reader/feishu/FeiShuDocumentReader.javapublic class FeiShuDocumentReader com.lark.oapi.Client根据userAccessToken或tenantAccessToken去读取文档FeiShuResourcecommunity/document-readers/spring-ai-alibaba-starter-document-reader-larksuite public static final String SOURCE = "source";public static final String FEISHU_PROPERTIES_PREFIX = "spring.ai.alibaba.plugin.feishu FEISHU_DOCUMENT_ID);List<Document> documentList = feiShuDocumentReader.get();log.info("result:{}", documentList);}}小结spring-ai-alibaba-starter-document-reader-larksuite

    25900编辑于 2025-04-20
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的BilibiliDocumentReader

    序 本文主要研究一下Spring AI Alibaba的BilibiliDocumentReader BilibiliDocumentReader community/document-readers/ spring-ai-alibaba-starter-document-reader-bilibili/src/main/java/com/alibaba/cloud/ai/reader/bilibili Document> documents = bilibiliDocumentReader.get(); logger.info("documents: {}", documents); } } 小结 spring-ai-alibaba-starter-document-reader-bilibili doc java2ai

    20000编辑于 2025-04-19
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的YoutubeDocumentReader

    序本文主要研究一下Spring AI Alibaba的YoutubeDocumentReaderYoutubeDocumentReadercommunity/document-readers/spring-ai-alibaba-starter-document-reader-youtube /src/main/java/com/alibaba/cloud/ai/reader/youtube/YoutubeDocumentReader.javapublic class YoutubeDocumentReader v=videoId,之后解析html内容获取videoDetails内容,再json解析提取language、subtitleText示例community/document-readers/spring-ai-alibaba-starter-document-reader-youtube /src/test/java/com/alibaba/cloud/ai/reader/youtube/YoutubeDocumentReaderTest.javapublic class YoutubeDocumentReaderTest Document> documents = youtubeDocumentReader.get(); logger.info("documents: {}", documents); }}小结spring-ai-alibaba-starter-document-reader-youtube

    14900编辑于 2025-04-25
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的OneNoteDocumentReader

    序 本文主要研究一下Spring AI Alibaba的OneNoteDocumentReader OneNoteDocumentReader community/document-readers/spring-ai-alibaba-starter-document-reader-onenote expand=parentNotebook&expand=parentSection& OneNoteResource community/document-readers/spring-ai-alibaba-starter-document-reader-onenote OneNoteResource主要是定义了NOTEBOOK, SECTION, PAGE这三种resourceType以及resourceId 示例 community/document-readers/spring-ai-alibaba-starter-document-reader-onenote Verify content String content = document.getText(); assertThat(content).isNotEmpty(); } } 小结 spring-ai-alibaba-starter-document-reader-onenote doc java2ai

    29800编辑于 2025-04-26
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的BilibiliDocumentReader

    序本文主要研究一下Spring AI Alibaba的BilibiliDocumentReaderBilibiliDocumentReadercommunity/document-readers/spring-ai-alibaba-starter-document-reader-bilibili /src/main/java/com/alibaba/cloud/ai/reader/bilibili/BilibiliDocumentReader.javapublic class BilibiliDocumentReader List<Document> documents = bilibiliDocumentReader.get();logger.info("documents: {}", documents);}}小结spring-ai-alibaba-starter-document-reader-bilibili docjava2ai

    18700编辑于 2025-04-18
  • 来自专栏码匠的流水账

    聊聊Spring AI Alibaba的PlantUMLGenerator

    序本文主要研究一下Spring AI Alibaba的PlantUMLGeneratorDiagramGeneratorspring-ai-alibaba-graph/spring-ai-alibaba-graph-core PlantUMLGeneratorspring-ai-alibaba-graph/spring-ai-alibaba-graph-core/src/main/java/com/alibaba/cloud append(format("title \"%s\"\n", ctx.title())) .append("footer\n\n") .append("powered by spring-ai-alibaba /spring-ai-alibaba-graph-core/src/main/java/com/alibaba/cloud/ai/graph/StateGraph.java/** * Represents docspring-ai-alibaba

    30710编辑于 2025-04-29
领券