78 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Thrift
		
	
	
	
			
		
		
	
	
			78 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Thrift
		
	
	
	
include "../../base.thrift"
 | 
						|
include "common.thrift"
 | 
						|
 | 
						|
namespace go data.knowledge
 | 
						|
 | 
						|
struct DeleteSliceRequest {
 | 
						|
    4:  optional list<string> slice_ids (api.body="slice_ids") // List of sharding IDs to delete
 | 
						|
    255: optional base.Base Base
 | 
						|
}
 | 
						|
 | 
						|
struct DeleteSliceResponse {
 | 
						|
    253: required i64 code
 | 
						|
    254: required string msg
 | 
						|
    255: optional base.BaseResp BaseResp(api.none="true")
 | 
						|
}
 | 
						|
 | 
						|
struct CreateSliceRequest {
 | 
						|
    2: required i64 document_id(agw.js_conv="str", api.js_conv="true") // Add sharding inserted document ID
 | 
						|
    5: optional string raw_text  // Add sharding content
 | 
						|
    6: optional i64 sequence(agw.js_conv="str", api.js_conv="true") // Sharding insertion position, 1 indicates the beginning of the document, and the maximum value is the last sharding position + 1
 | 
						|
    255: optional base.Base Base
 | 
						|
}
 | 
						|
 | 
						|
struct CreateSliceResponse {
 | 
						|
    1: i64  slice_id (agw.js_conv="str", api.js_conv="true") // Add sharding ID
 | 
						|
 | 
						|
    253: required i64 code
 | 
						|
    254: required string msg
 | 
						|
    255: optional base.BaseResp BaseResp
 | 
						|
}
 | 
						|
 | 
						|
struct UpdateSliceRequest {
 | 
						|
    2: required i64 slice_id (agw.js_conv="str", api.js_conv="true") // The sharding ID to update
 | 
						|
    7: optional string  raw_text   // Content to be updated
 | 
						|
    255: optional base.Base Base
 | 
						|
}
 | 
						|
 | 
						|
enum SliceStatus {
 | 
						|
    PendingVectoring = 0 // unvectorized
 | 
						|
    FinishVectoring  = 1 // vectorized
 | 
						|
    Deactive         = 9 // disable
 | 
						|
}
 | 
						|
 | 
						|
struct UpdateSliceResponse {
 | 
						|
    253: required i64 code
 | 
						|
    254: required string msg
 | 
						|
    255: optional base.BaseResp BaseResp
 | 
						|
}
 | 
						|
 | 
						|
struct ListSliceRequest {
 | 
						|
    2:  optional i64    document_id(agw.js_conv="str", api.js_conv="true") // The document ID of the sharding to list
 | 
						|
    3:  optional i64    sequence(agw.js_conv="str", api.js_conv="true")    // Sharding serial number, indicating that the list starts from the sharding of this serial number
 | 
						|
    4:  optional string keyword                         // query keyword
 | 
						|
    5:  optional i64    dataset_id (agw.js_conv="str", api.js_conv="true")  // If only dataset_id, return sharding under that knowledge base
 | 
						|
    21:          i64    page_size(agw.js_conv="str", api.js_conv="true")  // page size
 | 
						|
    255: optional base.Base Base
 | 
						|
}
 | 
						|
 | 
						|
struct ListSliceResponse {
 | 
						|
    1: list<SliceInfo> slices  // Returned list of shardings
 | 
						|
    2: i64 total(agw.js_conv="str", api.js_conv="true") // Total shardings
 | 
						|
    3: bool hasmore // Is there more sharding?
 | 
						|
 | 
						|
    253: required i64 code
 | 
						|
    254: required string msg
 | 
						|
    255: optional base.BaseResp BaseResp
 | 
						|
}
 | 
						|
 | 
						|
struct SliceInfo {
 | 
						|
    1: i64         slice_id  (agw.js_conv="str", api.js_conv="true") // Sharding ID
 | 
						|
    2: string      content // Sharding content
 | 
						|
    3: SliceStatus status // Sharding state
 | 
						|
    4: i64         hit_count(agw.js_conv="str", api.js_conv="true")   // hit count
 | 
						|
    5: i64         char_count(agw.js_conv="str", api.js_conv="true")  // character count
 | 
						|
    7: i64         sequence(agw.js_conv="str", api.js_conv="true")    // serial number
 | 
						|
    8: i64         document_id(agw.js_conv="str", api.js_conv="true") // The document ID to which sharding belongs
 | 
						|
    9: string      chunk_info // Meta information related to sharding, extra- > chunk_info field in the transparent slice table (json)
 | 
						|
} |