pub struct GenaiCreateKnowledgeBaseBody {
pub database_id: Option<String>,
pub datasources: Vec<GenaiCreateKnowledgeBaseBodyDatasourcesItem>,
pub embedding_model_uuid: Option<String>,
pub name: Option<String>,
pub project_id: Option<String>,
pub region: Option<String>,
pub reranking_config: Option<GenaiCreateKnowledgeBaseBodyRerankingConfig>,
pub size: GenaiCreateKnowledgeBaseBodySize,
pub tags: Vec<String>,
pub vpc_uuid: Option<String>,
}Expand description
Data to create a new knowledge base.
JSON schema
{
"description": "Data to create a new knowledge base.",
"type": "object",
"properties": {
"database_id": {
"description": "Identifier of the DigitalOcean OpenSearch database this knowledge base will use, optional.\nIf not provided, we create a new database for the knowledge base in\nthe same region as the knowledge base.",
"examples": [
"\"12345678-1234-1234-1234-123456789012\""
],
"type": "string"
},
"datasources": {
"description": "Optional data sources to attach at creation. Omit or use an empty list to create the knowledge base without sources, then add sources (with chunking strategy and sizes) using [Add a Data Source to a Knowledge Base](#operation/create_knowledge_base_data_source). When provided, see [Organize Data Sources](https://docs.digitalocean.com/products/gradient-ai-platform/how-to/create-manage-agent-knowledge-bases/#add-data-sources) for best practices.",
"type": "array",
"items": {
"type": "object",
"properties": {
"aws_data_source": {
"description": "Auto-generated fallback definition for: apiAWSDataSource",
"type": "object",
"additionalProperties": true
},
"bucket_name": {
"description": "Deprecated, moved to data_source_details",
"examples": [
"example name"
],
"type": "string"
},
"bucket_region": {
"description": "Deprecated, moved to data_source_details",
"examples": [
"example string"
],
"type": "string"
},
"chunking_algorithm": {
"description": "Auto-generated fallback definition for: apiChunkingAlgorithm",
"type": "object",
"additionalProperties": true
},
"chunking_options": {
"description": "Auto-generated fallback definition for: apiChunkingOptions",
"type": "object",
"additionalProperties": true
},
"dropbox_data_source": {
"description": "Auto-generated fallback definition for: apiDropboxDataSource",
"type": "object",
"additionalProperties": true
},
"file_upload_data_source": {
"description": "Auto-generated fallback definition for: apiFileUploadDataSource",
"type": "object",
"additionalProperties": true
},
"google_drive_data_source": {
"description": "Auto-generated fallback definition for: apiGoogleDriveDataSource",
"type": "object",
"additionalProperties": true
},
"item_path": {
"examples": [
"example string"
],
"type": "string"
},
"spaces_data_source": {
"description": "Auto-generated fallback definition for: apiSpacesDataSource",
"type": "object",
"additionalProperties": true
},
"web_crawler_data_source": {
"description": "Auto-generated fallback definition for: apiWebCrawlerDataSource",
"type": "object",
"additionalProperties": true
}
}
}
},
"embedding_model_uuid": {
"description": "Identifier for the [embedding model](https://docs.digitalocean.com/products/genai-platform/details/models/#embedding-models).",
"examples": [
"\"12345678-1234-1234-1234-123456789012\""
],
"type": "string"
},
"name": {
"description": "Name of the knowledge base.",
"examples": [
"\"My Knowledge Base\""
],
"type": "string"
},
"project_id": {
"description": "Identifier of the DigitalOcean project this knowledge base will belong to.",
"examples": [
"\"12345678-1234-1234-1234-123456789012\""
],
"type": "string"
},
"region": {
"description": "The datacenter region to deploy the knowledge base in.",
"examples": [
"\"tor1\""
],
"type": "string"
},
"reranking_config": {
"description": "Configuration for cross-encoder reranking during retrieval.",
"type": "object",
"properties": {
"enabled": {
"description": "Whether reranking is enabled for retrieval",
"examples": [
true
],
"type": "boolean"
},
"model": {
"description": "Reranker model internal name",
"examples": [
"\"bge-reranker-v2-m3\""
],
"type": "string"
}
}
},
"size": {
"default": "OPEN_SEARCH_PLAN_SIZE_UNSPECIFIED",
"examples": [
"OPEN_SEARCH_PLAN_SIZE_UNSPECIFIED"
],
"type": "string",
"enum": [
"OPEN_SEARCH_PLAN_SIZE_UNSPECIFIED",
"OPEN_SEARCH_PLAN_SIZE_SMALL",
"OPEN_SEARCH_PLAN_SIZE_MEDIUM",
"OPEN_SEARCH_PLAN_SIZE_LARGE",
"OPEN_SEARCH_PLAN_SIZE_EXTRA_LARGE"
]
},
"tags": {
"description": "Tags to organize your knowledge base.",
"examples": [
[
"example string"
]
],
"type": "array",
"items": {
"examples": [
"example string"
],
"type": "string"
}
},
"vpc_uuid": {
"description": "The VPC to deploy the knowledge base database in",
"examples": [
"\"12345678-1234-1234-1234-123456789012\""
],
"type": "string"
}
}
}Fields§
§database_id: Option<String>Identifier of the DigitalOcean OpenSearch database this knowledge base will use, optional. If not provided, we create a new database for the knowledge base in the same region as the knowledge base.
datasources: Vec<GenaiCreateKnowledgeBaseBodyDatasourcesItem>Optional data sources to attach at creation. Omit or use an empty list to create the knowledge base without sources, then add sources (with chunking strategy and sizes) using Add a Data Source to a Knowledge Base. When provided, see Organize Data Sources for best practices.
embedding_model_uuid: Option<String>Identifier for the embedding model.
name: Option<String>Name of the knowledge base.
project_id: Option<String>Identifier of the DigitalOcean project this knowledge base will belong to.
region: Option<String>The datacenter region to deploy the knowledge base in.
reranking_config: Option<GenaiCreateKnowledgeBaseBodyRerankingConfig>§size: GenaiCreateKnowledgeBaseBodySizeTags to organize your knowledge base.
vpc_uuid: Option<String>The VPC to deploy the knowledge base database in
Trait Implementations§
Source§impl Clone for GenaiCreateKnowledgeBaseBody
impl Clone for GenaiCreateKnowledgeBaseBody
Source§fn clone(&self) -> GenaiCreateKnowledgeBaseBody
fn clone(&self) -> GenaiCreateKnowledgeBaseBody
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more