| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 |
- from typing import Literal, Optional
-
- from pydantic import BaseModel
-
-
- class IconInfo(BaseModel):
- icon: str
- icon_background: Optional[str] = None
- icon_type: Optional[str] = None
- icon_url: Optional[str] = None
-
-
- class PipelineTemplateInfoEntity(BaseModel):
- name: str
- description: str
- icon_info: IconInfo
-
-
- class RagPipelineDatasetCreateEntity(BaseModel):
- name: str
- description: str
- icon_info: IconInfo
- permission: str
- partial_member_list: Optional[list[str]] = None
- yaml_content: Optional[str] = None
-
-
- class RerankingModelConfig(BaseModel):
- """
- Reranking Model Config.
- """
-
- reranking_provider_name: str
- reranking_model_name: str
-
-
- class VectorSetting(BaseModel):
- """
- Vector Setting.
- """
-
- vector_weight: float
- embedding_provider_name: str
- embedding_model_name: str
-
-
- class KeywordSetting(BaseModel):
- """
- Keyword Setting.
- """
-
- keyword_weight: float
-
-
- class WeightedScoreConfig(BaseModel):
- """
- Weighted score Config.
- """
-
- vector_setting: VectorSetting
- keyword_setting: KeywordSetting
-
-
- class EmbeddingSetting(BaseModel):
- """
- Embedding Setting.
- """
-
- embedding_provider_name: str
- embedding_model_name: str
-
-
- class EconomySetting(BaseModel):
- """
- Economy Setting.
- """
-
- keyword_number: int
-
-
- class RetrievalSetting(BaseModel):
- """
- Retrieval Setting.
- """
-
- search_method: Literal["semantic_search", "fulltext_search", "keyword_search", "hybrid_search"]
- top_k: int
- score_threshold: Optional[float] = 0.5
- score_threshold_enabled: bool = False
- reranking_mode: str = "reranking_model"
- reranking_enable: bool = True
- reranking_model: Optional[RerankingModelConfig] = None
- weights: Optional[WeightedScoreConfig] = None
-
-
- class IndexMethod(BaseModel):
- """
- Knowledge Index Setting.
- """
-
- indexing_technique: Literal["high_quality", "economy"]
- embedding_setting: EmbeddingSetting
- economy_setting: EconomySetting
-
-
- class KnowledgeConfiguration(BaseModel):
- """
- Knowledge Base Configuration.
- """
-
- chunk_structure: str
- indexing_technique: Literal["high_quality", "economy"]
- embedding_model_provider: Optional[str] = ""
- embedding_model: Optional[str] = ""
- keyword_number: Optional[int] = 10
- retrieval_model: RetrievalSetting
|