Create Extraction Workflow
Workflow: Create Extraction Workflow
User Intent
Operation
TypeScript (Canonical)
import { Graphlit } from 'graphlit-client';
import { EntityState, ModelServiceTypes, ObservableTypes, SpecificationTypes } from 'graphlit-client/dist/generated/graphql-types';
const graphlit = new Graphlit();
// Step 1: Create specification for extraction model (optional but recommended)
const specificationResponse = await graphlit.createSpecification({
name: 'Claude Sonnet 3.7 for Extraction',
type: SpecificationTypes.Extraction,
serviceType: ModelServiceTypes.Anthropic,
anthropic: {
model: AnthropicModels.Claude_3_7Sonnet
}
});
const specId = specificationResponse.createSpecification.id;
// Step 2: Create extraction workflow
const workflowInput: WorkflowInput = {
name: 'Entity Extraction',
extraction: {
jobs: [{
connector: {
type: EntityExtractionServiceTypes.ModelText,
modelText: {
specification: { id: specId }
}
}
}]
}
};
const response = await graphlit.createWorkflow(workflowInput);
const workflowId = response.createWorkflow.id;
console.log(`Workflow created: ${workflowId}`);
// Step 3: Use workflow during content ingestion
const contentResponse = await graphlit.ingestUri(
'https://example.com/document.pdf',
undefined, // name
undefined, // id
undefined, // identifier
true, // isSynchronous
{ id: workflowId } // workflow
);
const contentId = contentResponse.ingestUri.id;
// Step 4: Query extracted entities
const entitiesResponse = await graphlit.queryObservables({
observableTypes: [
ObservableTypes.Person,
ObservableTypes.Organization,
ObservableTypes.Label
]
});
console.log(`Extracted ${entitiesResponse.observables.results.length} entities`);Create specification
Create extraction workflow (snake_case)
Parameters
WorkflowInput (Required)
ExtractionWorkflowStageInput
ExtractionWorkflowJobInput
EntityExtractionConnectorInput
Response
Developer Hints
Workflow vs Direct Extraction
Default vs Custom Entity Types
Choosing Extraction Model
Multi-Job Extraction
Variations
1. Basic Entity Extraction
2. Extract Specific Entity Types
3. Custom Legal Entity Extraction
4. Medical/Scientific Entity Extraction
5. Combined Preparation + Extraction
6. Azure Document Intelligence Extraction
Common Issues
Production Example
Last updated