Create segments¶
Creates a segment in the source’s current segment version. A new text, OCR, or image description segment can be provided by source content.
POST $CLOUDSIGMA_API_BASE/semantic-models/{model_id}/sources/{source_row_id}/segments
Before you call this API¶
Configure the regional API endpoint and authentication, and select the target workspace.
First query the document details, and obtain the current segment version ID and index version as the baseline.
Set the operation-specific values used in the request:
$MODEL_ID: Knowledge Base ID.$SOURCE_ROW_ID: Source record ID.
Request¶
curl -X POST "$CLOUDSIGMA_API_BASE/semantic-models/$MODEL_ID/sources/$SOURCE_ROW_ID/segments" \
-H "X-API-Key: $CLOUDSIGMA_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"base_segment_version_id": "<SEGMENT_VERSION_ID>",
"base_index_version": <INDEX_VERSION>,
"level": "chunk",
"content": "<SEGMENT_CONTENT>"
}'
Path parameters
Parameters |
Type |
Description |
|---|---|---|
|
integer |
Knowledge base ID. |
|
string |
Source record ID. |
Request body
Commit source’s current version baseline and staging content.
Field |
Type |
Required |
Description |
|---|---|---|---|
|
string |
Yes |
The current segment version ID read before the call. |
|
integer |
Yes |
The current index version read before the call. |
|
string |
No |
Segment level. |
|
string |
No |
Text segment content. |
|
string |
No |
OCR recognized text. |
|
string |
No |
Image content description. |
|
string |
No |
The associated image file ID. |
|
string |
No |
The associated page image file ID. |
|
JSON |
No |
Boundary information for the segment in the original content. |
|
JSON |
No |
Additional metadata. |
Successful response¶
Returns 200 and the updated source document snapshot on success.
{
"code": "OK",
"msg": "OK",
"data": {
"document": {
"source": {
"row_id": "src_01",
"model_id": 401
},
"segment_status": {
"available": true,
"total": 3
},
"segment_versions": [
{
"version_id": "ver_03",
"current": true,
"chunk_count": 3
}
],
"segments": [
{
"segment_id": "seg_03",
"segment_type": "text",
"level": "chunk",
"content": "新增分段",
"enabled": true
}
]
}
}
}
The response fields are as follows.
Field |
Type |
Description |
|---|---|---|
|
string |
|
|
string |
|
|
object |
Snapshot of the source document after writing. |
|
string |
Source record ID. |
|
object |
Current segment availability status and total number. |
|
string |
New or updated segment version ID. |
|
boolean |
Whether it is the current segmented version. |
|
string |
New segment ID. |
|
string |
Segment level. |
|
string |
Segmented text; may be omitted if content is not returned. |
|
boolean |
Whether the segment participates in retrieval. |
In field paths, [] means each item in an array. For example, data.document.segment_versions[].version_id is the version_id field of each item in data.document.segment_versions.
Error response¶
{
"code": "ErrParamInvalid",
"msg": "invalid segment version baseline",
"data": null
}
Common HTTP errors¶
HTTP status code |
error code |
Common causes |
Recommended actions |
|---|---|---|---|
|
|
The path ID, request body, or staging version baseline is invalid. |
Submit using the current version information after re-reading the document. |
|
|
The API Key is invalid or has expired. |
Check API Key. |
|
|
The caller does not have permission to update this source. |
Check workspace and object authorization. |
|
|
The knowledge base or source does not exist or is not visible to the current caller. |
Reread source list to confirm ID. |
|
|
The current version has changed and the service refuses to write. |
Merge changes after reading the latest document and try again. |
|
|
The service failed to create the segment. |
Keep the desensitized response information and try again. |
Follow-up operations¶
Query document details confirms that the new segment has taken effect.