Similar name
Model input
- Record a
- Acme Labs · tax ID 111
- Record b
- Acme Labs · tax ID 222
Resolve identities, normalize names, and reconcile conflicting records using source evidence.
Choose an example
Match business records using stable identifiers and reconcile differences.
Step 01
Choose an example, review the proposed output, and annotate the fields that need to change. Your guidance defines the learned rules.
Whether stable identifiers establish a shared identity.
The evidence that determines the match decision.
Fields that disagree and may require reconciliation.
Match business records using stable identifiers and reconcile differences.
Sutro can now generalize the rules based on your feedback.
Step 02
Compare quality and cost on your examples, then choose a model or use Sutro’s default.
Compare models on expert agreement and cost. The interactive chart uses illustrative measurements.
Illustrative sweep · select Value or Best to use that model in your function.
Step 03
Call Sutro Functions like any other software. Swap the model as soon as something more performant is released.
import sutro as so
input_data = {
"record_a": "Acme Labs · tax ID 111",
"record_b": "Acme Labs · tax ID 222"
}
result = so.run_function(
"record-matching-reconciliation",
input_data,
)curl --fail-with-body -X POST "${SUTRO_API_URL%/}/v1/functions/record-matching-reconciliation/run" \
-H "Authorization: Key $SUTRO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": {
"record_a": "Acme Labs · tax ID 111",
"record_b": "Acme Labs · tax ID 222"
}
}'import sutro as so
job_id = so.batch_run_function(
name="record-matching-reconciliation",
data="record_matching_reconciliation.csv",
)
results = so.await_job_completion(job_id)curl --fail-with-body -X POST "${SUTRO_API_URL%/}/v1/batch-inference" \
-H "Authorization: Key $SUTRO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "record-matching-reconciliation",
"inputs": [
{
"record_a": "Acme Labs · tax ID 111",
"record_b": "Acme Labs · tax ID 222"
}
]
}'Step 01
Upload sample data, define your output schema, and provide feedback on the hardest cases.
Whether the records identify the same entity.
Distinguish identity from a corporate relationship.
Normalized name when a shared identity can be established. Not provided when absent from the source.
Domains or stable identifiers supporting a match.
Normalize entities while distinguishing genuinely different records.
Sutro can now generalize the rules based on your feedback.
Step 02
Compare quality and cost on your examples, then choose a model or use Sutro’s default.
Compare models on expert agreement and cost. The interactive chart uses illustrative measurements.
Illustrative sweep · select Value or Best to use that model in your function.
Step 03
Call Sutro Functions like any other software. Swap the model as soon as something more performant is released.
import sutro as so
input_data = {
"record_a": "Mercury · banking platform",
"record_b": "Mercury · automobile brand"
}
result = so.run_function(
"entity-matching-normalization",
input_data,
)curl --fail-with-body -X POST "${SUTRO_API_URL%/}/v1/functions/entity-matching-normalization/run" \
-H "Authorization: Key $SUTRO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": {
"record_a": "Mercury · banking platform",
"record_b": "Mercury · automobile brand"
}
}'import sutro as so
job_id = so.batch_run_function(
name="entity-matching-normalization",
data="entity_matching_normalization.csv",
)
results = so.await_job_completion(job_id)curl --fail-with-body -X POST "${SUTRO_API_URL%/}/v1/batch-inference" \
-H "Authorization: Key $SUTRO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "entity-matching-normalization",
"inputs": [
{
"record_a": "Mercury · banking platform",
"record_b": "Mercury · automobile brand"
}
]
}'