BailianKnowledge
public class BailianKnowledge implements Knowledge
io/agentscope/core/rag/integration/bailian/BailianKnowledge.java:87–390Bailian 知识库,把私有文档转化为可检索的知识。位于 io.agentscope.core.rag.integration.bailian 包,实现 Knowledge。核心成员包括 addDocuments、retrieve、getIndexId、getClient、builder。
Bailian Cloud Knowledge Base implementation.
This class provides integration with Alibaba Cloud Bailian Knowledge Base service, implementing the Knowledge interface to enable seamless RAG (Retrieval-Augmented Generation) capabilities with cloud-hosted knowledge bases.
Key features:
-
Cloud-hosted knowledge base (no local infrastructure needed)
-
Automatic document parsing and embedding by Bailian service
-
Enterprise-grade search with reranking and filtering
-
Supports structured, unstructured, and image knowledge bases
Example usage:
`// 1. Configure Bailian connection
BailianConfig config = BailianConfig.builder()
.accessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
.accessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"))
.workspaceId("llm-xxx")
.indexId("mymxbdxxxx")
.build();
// 2. Create knowledge base instance
BailianKnowledge knowledge = BailianKnowledge.builder()
.config(config)
.build();
// 3. Retrieve documents
RetrieveConfig retrieveConfig = RetrieveConfig.builder()
.limit(5)
.scoreThreshold(0.5)
.build();
List<Document> results = knowledge.retrieve("query text", retrieveConfig).block();
// 4. Use with agents via KnowledgeRetrievalTools
KnowledgeRetrievalTools tools = new KnowledgeRetrievalTools(knowledge);
Toolkit toolkit = new Toolkit();
toolkit.registerObject(tools);
ReActAgent agent = ReActAgent.builder()
.name("Assistant")
.model(chatModel)
.toolkit(toolkit)
.build();
`
Note: Currently, only the retrieve operation is supported via API. Document upload and management must be performed through the Bailian console or will be supported in future releases.
嵌套类摘要Nested Class Summary
| 类Class | 类型Kind | 说明Description |
|---|---|---|
Builder | 类class | BailianKnowledge的构建器。 Builder for BailianKnowledge. |
方法摘要Method Summary
| 方法Method | 说明Description |
|---|---|
public Mono<Void> addDocuments(List<Document> documents) | 添加文档。 Adds documents to the knowledge base. |
public Mono<List<Document>> retrieve(String query, RetrieveConfig config) | 按查询检索相关文档。 Retrieves relevant documents based on a query. |
public String getIndexId() | 获取知识库基类索引标识。 Gets the knowledge base index ID. |
public BailianClient getClient() | 获取客户端。 Gets the Bailian API client. |
public static Builder builder()static | 创建新的构建器用于 BailianKnowledge。 Creates a new builder for BailianKnowledge. |
方法详情Method Detail
addDocuments
public Mono<Void> addDocuments(List<Document> documents)
添加文档。
Adds documents to the knowledge base.
| 名称Name | 类型Type | 说明Description |
|---|---|---|
documents | List<Document> | 文档到添加的列出。the list of documents to add |
Mono<Void>io/agentscope/core/rag/integration/bailian/BailianKnowledge.java:130–137retrieve
public Mono<List<Document>> retrieve(String query, RetrieveConfig config)
按查询检索相关文档。
Retrieves relevant documents based on a query.
| 名称Name | 类型Type | 说明Description |
|---|---|---|
query | String | 搜索查询文本。the search query text |
config | RetrieveConfig | 检索配置(限制,分数阈值,会话历史)。the retrieval configuration (limit, score threshold, conversation history) |
Mono<List<Document>>io/agentscope/core/rag/integration/bailian/BailianKnowledge.java:162–215getIndexId
public String getIndexId()
获取知识库基类索引标识。
Gets the knowledge base index ID.
Stringio/agentscope/core/rag/integration/bailian/BailianKnowledge.java:276–278getClient
public BailianClient getClient()
获取客户端。
Gets the Bailian API client.
BailianClientio/agentscope/core/rag/integration/bailian/BailianKnowledge.java:285–287builder
public static Builder builder()
创建新的构建器用于 BailianKnowledge。
Creates a new builder for BailianKnowledge.
Builderio/agentscope/core/rag/integration/bailian/BailianKnowledge.java:294–296嵌套类详情Nested Class Detail
Builder
public static class BuilderBailianKnowledge的构建器。位于 io.agentscope.core.rag.integration.bailian 包。核心成员包括 config、client、indexId、build。
Builder for BailianKnowledge.