Update segments¶
Updates the contents of the specified section. Version baselines are used to avoid overwriting newer modifications.
PATCH $CLOUDSIGMA_API_BASE/semantic-models/{model_id}/sources/{source_row_id}/segments/{segment_id}
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.$SEGMENT_ID: Segment ID to update.
Request¶
curl -X PATCH "$CLOUDSIGMA_API_BASE/semantic-models/$MODEL_ID/sources/$SOURCE_ROW_ID/segments/$SEGMENT_ID" \
-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>,
"content": "<SEGMENT_CONTENT>"
}'
Path parameters
Parameters |
Type |
Description |
|---|---|---|
|
integer |
Knowledge base ID. |
|
string |
Source record ID. |
|
string |
The segment ID to update. |
Request body
Submit the source’s current version baseline, and the text, OCR text, or image description to be updated.
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 |
The updated text content. |
|
string |
No |
Updated OCR text. |
|
string |
No |
Updated image description. |
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": 2
},
"segment_versions": [
{
"version_id": "ver_02",
"current": true,
"chunk_count": 2
}
],
"segments": [
{
"segment_id": "seg_01",
"segment_type": "text",
"level": "chunk",
"content": "更新后的文本",
"enabled": true
}
]
}
}
}
The response fields are as follows.
Field |
Type |
Description |
|---|---|---|
|
string |
|
|
string |
|
|
object |
Snapshot of the updated source document. |
|
string |
Source record ID. |
|
object |
Current segment availability status and total number. |
|
string |
Updated segment version ID. |
|
boolean |
Whether it is the current segmented version. |
|
string |
Segment ID. |
|
string |
Updated 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": "ErrConflict",
"msg": "segment version conflict",
"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, source, or segment does not exist or is not visible to the current caller. |
Reread document confirmation 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 update the segment. |
Keep the desensitized response information and try again. |
Follow-up operations¶
Query document details to confirm the update result.