- Revisiting RAG_SPECIALIST

- Adapt Catalogs & Retrievers to use specific types, removing tagging_fields
- Adding CrewAI Implementation Guide
This commit is contained in:
Josako
2025-07-08 15:54:16 +02:00
parent 33b5742d2f
commit 509ee95d81
32 changed files with 997 additions and 825 deletions

View File

@@ -0,0 +1,19 @@
version: "1.0.0"
name: "Role Definition Catalog"
description: "A Catalog containing information specific to a specific role"
configuration:
tagging_fields:
role_identification:
type: "string"
required: true
description: "A unique identification for the role"
document_type:
type: "enum"
required: true
description: "Type of document"
allowed_values: [ "Intake", "Vacancy Text", "Additional Information" ]
document_version_configurations: ["tagging_fields"]
metadata:
author: "Josako"
date_added: "2025-07-07"
description: "A Catalog containing information specific to a specific role"

View File

@@ -3,7 +3,7 @@ name: "Standard RAG Retriever"
configuration:
es_k:
name: "es_k"
type: "int"
type: "integer"
description: "K-value to retrieve embeddings (max embeddings retrieved)"
required: true
default: 8
@@ -13,12 +13,7 @@ configuration:
description: "Similarity threshold for retrieving embeddings"
required: true
default: 0.3
arguments:
query:
name: "query"
type: "str"
description: "Query to retrieve embeddings"
required: True
arguments: {}
metadata:
author: "Josako"
date_added: "2025-01-24"

View File

@@ -0,0 +1,26 @@
version: "1.0.0"
name: "Retrieves role information for a specific role"
configuration:
es_k:
name: "es_k"
type: "integer"
description: "K-value to retrieve embeddings (max embeddings retrieved)"
required: true
default: 8
es_similarity_threshold:
name: "es_similarity_threshold"
type: "float"
description: "Similarity threshold for retrieving embeddings"
required: true
default: 0.3
arguments:
role_identification:
name: "Role Identification"
type: "string"
description: "The role information needs to be retrieved for"
required: true
metadata:
author: "Josako"
date_added: "2025-07-07"
changes: "Initial version"
description: "Retrieves role information for a specific role"

View File

@@ -1,9 +1,9 @@
version: "1.0.0"
name: "DOSSIER Retriever"
name: "Retrieves vacancy text for a specific role"
configuration:
es_k:
name: "es_k"
type: "int"
type: "integer"
description: "K-value to retrieve embeddings (max embeddings retrieved)"
required: true
default: 8
@@ -13,24 +13,19 @@ configuration:
description: "Similarity threshold for retrieving embeddings"
required: true
default: 0.3
tagging_fields_filter:
name: "Tagging Fields Filter"
type: "tagging_fields_filter"
description: "Filter JSON to retrieve a subset of documents"
required: true
dynamic_arguments:
name: "Dynamic Arguments"
type: "dynamic_arguments"
description: "dynamic arguments used in the filter"
required: false
arguments:
query:
name: "query"
type: "str"
type: "string"
description: "Query to retrieve embeddings"
required: True
required: true
role_identification:
name: "Role Identification"
type: "string"
description: "The role information needs to be retrieved for"
required: true
metadata:
author: "Josako"
date_added: "2025-03-11"
date_added: "2025-07-07"
changes: "Initial version"
description: "Retrieving all embeddings conform the query and the tagging fields filter"
description: "Retrieves vacancy text for a specific role"

View File

@@ -19,11 +19,6 @@ arguments:
type: "str"
description: "Language code to be used for receiving questions and giving answers"
required: true
query:
name: "query"
type: "str"
description: "Query or response to process"
required: true
results:
rag_output:
answer:

View File

@@ -0,0 +1,49 @@
version: "1.0.0"
name: "RAG Specialist"
framework: "crewai"
chat: true
configuration:
name:
name: "name"
type: "str"
description: "The name the specialist is called upon."
required: true
welcome_message:
name: "Welcome Message"
type: "string"
description: "Welcome Message to be given to the end user"
required: false
arguments:
language:
name: "Language"
type: "str"
description: "Language code to be used for receiving questions and giving answers"
required: true
results:
rag_output:
answer:
name: "answer"
type: "str"
description: "Answer to the query"
required: true
citations:
name: "citations"
type: "List[str]"
description: "List of citations"
required: false
insufficient_info:
name: "insufficient_info"
type: "bool"
description: "Whether or not the query is insufficient info"
required: true
agents:
- type: "RAG_AGENT"
version: "1.1"
tasks:
- type: "RAG_TASK"
version: "1.1"
metadata:
author: "Josako"
date_added: "2025-01-08"
changes: "Initial version"
description: "A Specialist that performs Q&A activities"

View File

@@ -4,8 +4,9 @@ CATALOG_TYPES = {
"name": "Standard Catalog",
"description": "A Catalog with information in Evie's Library, to be considered as a whole",
},
"DOSSIER_CATALOG": {
"name": "Dossier Catalog",
"description": "A Catalog with information in Evie's Library in which several Dossiers can be stored",
"TRAICIE_ROLE_DEFINITION_CATALOG": {
"name": "Role Definition Catalog",
"description": "A Catalog with information about roles, to be considered as a whole",
"partner": "traicie"
},
}

View File

@@ -4,8 +4,16 @@ RETRIEVER_TYPES = {
"name": "Standard RAG Retriever",
"description": "Retrieving all embeddings from the catalog conform the query",
},
"DOSSIER_RETRIEVER": {
"name": "Retriever for managing DOSSIER catalogs",
"description": "Retrieving filtered embeddings from the catalog conform the query",
"TRAICIE_ROLE_DEFINITION_BY_ROLE_IDENTIFICATION": {
"name": "Traicie Role Definition Retriever by Role Identification",
"description": "Retrieves relevant role information for a given role",
"partner": "traicie",
"valid_catalog_types": ["TRAICIE_ROLE_DEFINITION_CATALOG"]
},
"TRAICIE_ROLE_DEFINITION_VACANCY_TEXT": {
"name": "Traicie Role Definition Vacancy Text Retriever",
"description": "Retrieves vacancy text for a given role",
"partner": "traicie",
"valid_catalog_types": ["TRAICIE_ROLE_DEFINITION_CATALOG"]
}
}

View File

@@ -1,7 +1,7 @@
# Specialist Types
SPECIALIST_TYPES = {
"STANDARD_RAG_SPECIALIST": {
"name": "Q&A RAG Specialist",
"name": "Standard RAG Specialist",
"description": "Standard Q&A through RAG Specialist",
},
"RAG_SPECIALIST": {