You've already forked DataMate
631 lines
15 KiB
YAML
631 lines
15 KiB
YAML
openapi: 3.0.3
|
|
info:
|
|
title: Data Evaluation Service API
|
|
description: 数据评估服务API - 质量、适配性、价值评估
|
|
version: 1.0.0
|
|
contact:
|
|
name: Data Mate Platform Team
|
|
|
|
servers:
|
|
- url: http://localhost:8086
|
|
description: Development server
|
|
|
|
tags:
|
|
- name: quality-evaluation
|
|
description: 数据质量评估
|
|
- name: compatibility-evaluation
|
|
description: 适配性评估
|
|
- name: value-evaluation
|
|
description: 价值评估
|
|
- name: evaluation-reports
|
|
description: 评估报告
|
|
|
|
paths:
|
|
/api/v1/evaluation/quality:
|
|
post:
|
|
tags:
|
|
- quality-evaluation
|
|
summary: 数据质量评估
|
|
description: 对数据集进行质量评估,包括完整性、准确性、一致性等
|
|
requestBody:
|
|
required: true
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/QualityEvaluationRequest'
|
|
responses:
|
|
'200':
|
|
description: 评估成功
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/QualityEvaluationResponse'
|
|
|
|
/api/v1/evaluation/quality/{evaluationId}:
|
|
get:
|
|
tags:
|
|
- quality-evaluation
|
|
summary: 获取质量评估结果
|
|
parameters:
|
|
- name: evaluationId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
'200':
|
|
description: 获取成功
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/QualityEvaluationDetailResponse'
|
|
|
|
/api/v1/evaluation/compatibility:
|
|
post:
|
|
tags:
|
|
- compatibility-evaluation
|
|
summary: 适配性评估
|
|
description: 评估数据集与目标模型或任务的适配性
|
|
requestBody:
|
|
required: true
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/CompatibilityEvaluationRequest'
|
|
responses:
|
|
'200':
|
|
description: 评估成功
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/CompatibilityEvaluationResponse'
|
|
|
|
/api/v1/evaluation/value:
|
|
post:
|
|
tags:
|
|
- value-evaluation
|
|
summary: 价值评估
|
|
description: 评估数据集的商业价值和使用价值
|
|
requestBody:
|
|
required: true
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ValueEvaluationRequest'
|
|
responses:
|
|
'200':
|
|
description: 评估成功
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/ValueEvaluationResponse'
|
|
|
|
/api/v1/evaluation/reports:
|
|
get:
|
|
tags:
|
|
- evaluation-reports
|
|
summary: 获取评估报告列表
|
|
parameters:
|
|
- name: page
|
|
in: query
|
|
schema:
|
|
type: integer
|
|
default: 0
|
|
- name: size
|
|
in: query
|
|
schema:
|
|
type: integer
|
|
default: 20
|
|
- name: type
|
|
in: query
|
|
schema:
|
|
$ref: '#/components/schemas/EvaluationType'
|
|
- name: datasetId
|
|
in: query
|
|
schema:
|
|
type: string
|
|
responses:
|
|
'200':
|
|
description: 获取成功
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/EvaluationReportPageResponse'
|
|
|
|
/api/v1/evaluation/reports/{reportId}:
|
|
get:
|
|
tags:
|
|
- evaluation-reports
|
|
summary: 获取评估报告详情
|
|
parameters:
|
|
- name: reportId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
responses:
|
|
'200':
|
|
description: 获取成功
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/EvaluationReportDetailResponse'
|
|
|
|
/api/v1/evaluation/reports/{reportId}/export:
|
|
get:
|
|
tags:
|
|
- evaluation-reports
|
|
summary: 导出评估报告
|
|
parameters:
|
|
- name: reportId
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: format
|
|
in: query
|
|
schema:
|
|
type: string
|
|
enum: [PDF, EXCEL, JSON]
|
|
default: PDF
|
|
responses:
|
|
'200':
|
|
description: 导出成功
|
|
content:
|
|
application/octet-stream:
|
|
schema:
|
|
type: string
|
|
format: binary
|
|
|
|
/api/v1/evaluation/batch:
|
|
post:
|
|
tags:
|
|
- evaluation-reports
|
|
summary: 批量评估
|
|
description: 对多个数据集进行批量评估
|
|
requestBody:
|
|
required: true
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/BatchEvaluationRequest'
|
|
responses:
|
|
'202':
|
|
description: 批量评估任务已提交
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/BatchEvaluationResponse'
|
|
|
|
components:
|
|
schemas:
|
|
QualityEvaluationRequest:
|
|
type: object
|
|
required:
|
|
- datasetId
|
|
- metrics
|
|
properties:
|
|
datasetId:
|
|
type: string
|
|
description: 数据集ID
|
|
metrics:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/QualityMetric'
|
|
description: 评估指标
|
|
sampleSize:
|
|
type: integer
|
|
description: 采样大小
|
|
parameters:
|
|
type: object
|
|
description: 评估参数
|
|
|
|
QualityEvaluationResponse:
|
|
type: object
|
|
properties:
|
|
evaluationId:
|
|
type: string
|
|
status:
|
|
$ref: '#/components/schemas/EvaluationStatus'
|
|
overallScore:
|
|
type: number
|
|
format: double
|
|
description: 总体质量分数
|
|
metrics:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/QualityMetricResult'
|
|
recommendations:
|
|
type: array
|
|
items:
|
|
type: string
|
|
createdAt:
|
|
type: string
|
|
format: date-time
|
|
|
|
QualityEvaluationDetailResponse:
|
|
allOf:
|
|
- $ref: '#/components/schemas/QualityEvaluationResponse'
|
|
- type: object
|
|
properties:
|
|
detailedResults:
|
|
$ref: '#/components/schemas/DetailedQualityResults'
|
|
visualizations:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/VisualizationData'
|
|
|
|
CompatibilityEvaluationRequest:
|
|
type: object
|
|
required:
|
|
- datasetId
|
|
- targetType
|
|
properties:
|
|
datasetId:
|
|
type: string
|
|
targetType:
|
|
$ref: '#/components/schemas/TargetType'
|
|
targetConfig:
|
|
type: object
|
|
description: 目标配置(模型、任务等)
|
|
evaluationCriteria:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/CompatibilityCriterion'
|
|
|
|
CompatibilityEvaluationResponse:
|
|
type: object
|
|
properties:
|
|
evaluationId:
|
|
type: string
|
|
compatibilityScore:
|
|
type: number
|
|
format: double
|
|
results:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/CompatibilityResult'
|
|
suggestions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
createdAt:
|
|
type: string
|
|
format: date-time
|
|
|
|
ValueEvaluationRequest:
|
|
type: object
|
|
required:
|
|
- datasetId
|
|
- valueCriteria
|
|
properties:
|
|
datasetId:
|
|
type: string
|
|
valueCriteria:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/ValueCriterion'
|
|
marketContext:
|
|
type: object
|
|
description: 市场环境信息
|
|
businessContext:
|
|
type: object
|
|
description: 业务环境信息
|
|
|
|
ValueEvaluationResponse:
|
|
type: object
|
|
properties:
|
|
evaluationId:
|
|
type: string
|
|
valueScore:
|
|
type: number
|
|
format: double
|
|
monetaryValue:
|
|
type: number
|
|
format: double
|
|
description: 货币价值估算
|
|
strategicValue:
|
|
type: number
|
|
format: double
|
|
description: 战略价值评分
|
|
results:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/ValueResult'
|
|
insights:
|
|
type: array
|
|
items:
|
|
type: string
|
|
|
|
EvaluationReportResponse:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
datasetId:
|
|
type: string
|
|
type:
|
|
$ref: '#/components/schemas/EvaluationType'
|
|
status:
|
|
$ref: '#/components/schemas/EvaluationStatus'
|
|
overallScore:
|
|
type: number
|
|
format: double
|
|
summary:
|
|
type: string
|
|
createdAt:
|
|
type: string
|
|
format: date-time
|
|
completedAt:
|
|
type: string
|
|
format: date-time
|
|
|
|
EvaluationReportPageResponse:
|
|
type: object
|
|
properties:
|
|
content:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/EvaluationReportResponse'
|
|
totalElements:
|
|
type: integer
|
|
format: int64
|
|
totalPages:
|
|
type: integer
|
|
size:
|
|
type: integer
|
|
number:
|
|
type: integer
|
|
|
|
EvaluationReportDetailResponse:
|
|
allOf:
|
|
- $ref: '#/components/schemas/EvaluationReportResponse'
|
|
- type: object
|
|
properties:
|
|
qualityResults:
|
|
$ref: '#/components/schemas/QualityEvaluationResponse'
|
|
compatibilityResults:
|
|
$ref: '#/components/schemas/CompatibilityEvaluationResponse'
|
|
valueResults:
|
|
$ref: '#/components/schemas/ValueEvaluationResponse'
|
|
attachments:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/ReportAttachment'
|
|
|
|
BatchEvaluationRequest:
|
|
type: object
|
|
required:
|
|
- datasetIds
|
|
- evaluationTypes
|
|
properties:
|
|
datasetIds:
|
|
type: array
|
|
items:
|
|
type: string
|
|
evaluationTypes:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/EvaluationType'
|
|
parameters:
|
|
type: object
|
|
|
|
BatchEvaluationResponse:
|
|
type: object
|
|
properties:
|
|
batchId:
|
|
type: string
|
|
status:
|
|
type: string
|
|
totalTasks:
|
|
type: integer
|
|
submittedAt:
|
|
type: string
|
|
format: date-time
|
|
|
|
QualityMetric:
|
|
type: string
|
|
enum:
|
|
- COMPLETENESS
|
|
- ACCURACY
|
|
- CONSISTENCY
|
|
- VALIDITY
|
|
- UNIQUENESS
|
|
- TIMELINESS
|
|
|
|
QualityMetricResult:
|
|
type: object
|
|
properties:
|
|
metric:
|
|
$ref: '#/components/schemas/QualityMetric'
|
|
score:
|
|
type: number
|
|
format: double
|
|
details:
|
|
type: object
|
|
issues:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/QualityIssue'
|
|
|
|
DetailedQualityResults:
|
|
type: object
|
|
properties:
|
|
fieldAnalysis:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/FieldAnalysis'
|
|
distributionAnalysis:
|
|
$ref: '#/components/schemas/DistributionAnalysis'
|
|
correlationAnalysis:
|
|
$ref: '#/components/schemas/CorrelationAnalysis'
|
|
|
|
TargetType:
|
|
type: string
|
|
enum:
|
|
- LANGUAGE_MODEL
|
|
- CLASSIFICATION_MODEL
|
|
- RECOMMENDATION_SYSTEM
|
|
- CUSTOM_TASK
|
|
|
|
CompatibilityCriterion:
|
|
type: string
|
|
enum:
|
|
- FORMAT_COMPATIBILITY
|
|
- SCHEMA_COMPATIBILITY
|
|
- SIZE_ADEQUACY
|
|
- DISTRIBUTION_MATCH
|
|
- FEATURE_COVERAGE
|
|
|
|
CompatibilityResult:
|
|
type: object
|
|
properties:
|
|
criterion:
|
|
$ref: '#/components/schemas/CompatibilityCriterion'
|
|
score:
|
|
type: number
|
|
format: double
|
|
status:
|
|
type: string
|
|
enum: [PASS, WARN, FAIL]
|
|
details:
|
|
type: string
|
|
|
|
ValueCriterion:
|
|
type: string
|
|
enum:
|
|
- RARITY
|
|
- DEMAND
|
|
- QUALITY
|
|
- COMPLETENESS
|
|
- TIMELINESS
|
|
- STRATEGIC_IMPORTANCE
|
|
|
|
ValueResult:
|
|
type: object
|
|
properties:
|
|
criterion:
|
|
$ref: '#/components/schemas/ValueCriterion'
|
|
score:
|
|
type: number
|
|
format: double
|
|
impact:
|
|
type: string
|
|
enum: [LOW, MEDIUM, HIGH]
|
|
explanation:
|
|
type: string
|
|
|
|
EvaluationType:
|
|
type: string
|
|
enum:
|
|
- QUALITY
|
|
- COMPATIBILITY
|
|
- VALUE
|
|
- COMPREHENSIVE
|
|
|
|
EvaluationStatus:
|
|
type: string
|
|
enum:
|
|
- PENDING
|
|
- RUNNING
|
|
- COMPLETED
|
|
- FAILED
|
|
|
|
QualityIssue:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
severity:
|
|
type: string
|
|
enum: [LOW, MEDIUM, HIGH, CRITICAL]
|
|
description:
|
|
type: string
|
|
affectedRecords:
|
|
type: integer
|
|
suggestions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
|
|
FieldAnalysis:
|
|
type: object
|
|
properties:
|
|
fieldName:
|
|
type: string
|
|
dataType:
|
|
type: string
|
|
nullCount:
|
|
type: integer
|
|
uniqueCount:
|
|
type: integer
|
|
statistics:
|
|
type: object
|
|
|
|
DistributionAnalysis:
|
|
type: object
|
|
properties:
|
|
distributions:
|
|
type: array
|
|
items:
|
|
type: object
|
|
outliers:
|
|
type: array
|
|
items:
|
|
type: object
|
|
patterns:
|
|
type: array
|
|
items:
|
|
type: string
|
|
|
|
CorrelationAnalysis:
|
|
type: object
|
|
properties:
|
|
correlationMatrix:
|
|
type: array
|
|
items:
|
|
type: array
|
|
items:
|
|
type: number
|
|
significantCorrelations:
|
|
type: array
|
|
items:
|
|
type: object
|
|
|
|
VisualizationData:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
enum: [CHART, GRAPH, HISTOGRAM, HEATMAP]
|
|
title:
|
|
type: string
|
|
data:
|
|
type: object
|
|
config:
|
|
type: object
|
|
|
|
ReportAttachment:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
name:
|
|
type: string
|
|
type:
|
|
type: string
|
|
size:
|
|
type: integer
|
|
format: int64
|
|
downloadUrl:
|
|
type: string
|
|
|
|
securitySchemes:
|
|
BearerAuth:
|
|
type: http
|
|
scheme: bearer
|
|
bearerFormat: JWT
|
|
|
|
security:
|
|
- BearerAuth: []
|