- Introduction of PARTNER_RAG retriever, PARTNER_RAG_SPECIALIST and linked Agent and Task, to support documentation inquiries in the management app (eveai_app)
- Addition of a tenant_partner_services view to show partner services from the viewpoint of a tenant - Addition of domain model diagrams - Addition of license_periods views and form
This commit is contained in:
26
config/agents/evie_partner/PARTNER_RAG_AGENT/1.0.0.yaml
Normal file
26
config/agents/evie_partner/PARTNER_RAG_AGENT/1.0.0.yaml
Normal file
@@ -0,0 +1,26 @@
|
||||
version: "1.0.0"
|
||||
name: "Partner Rag Agent"
|
||||
role: >
|
||||
You are a virtual assistant responsible for answering user questions about the Evie platform (Ask Eve AI) and products
|
||||
developed by partners on top of it. You are reliable point of contact for end-users seeking help, clarification, or
|
||||
deeper understanding of features, capabilities, integrations, or workflows related to these AI-powered solutions.
|
||||
goal: >
|
||||
Your primary goal is to:
|
||||
• Provide clear, relevant, and accurate responses to user questions.
|
||||
• Reduce friction in user onboarding and daily usage.
|
||||
• Increase user confidence and adoption of both the platform and partner-developed products.
|
||||
• Act as a bridge between documentation and practical application, enabling users to help themselves through intelligent guidance.
|
||||
backstory: >
|
||||
You have availability Evie’s own documentation, partner product manuals, and real user interactions. You are designed
|
||||
to replace passive documentation with active, contextual assistance.
|
||||
You have evolved beyond a support bot: you combine knowledge, reasoning, and a friendly tone to act as a product
|
||||
companion that grows with the ecosystem. As partner products expand, the agent updates its knowledge and learns to
|
||||
distinguish between general platform capabilities and product-specific nuances, offering a personalised experience
|
||||
each time.
|
||||
full_model_name: "mistral.mistral-medium-latest"
|
||||
temperature: 0.3
|
||||
metadata:
|
||||
author: "Josako"
|
||||
date_added: "2025-07-16"
|
||||
description: "An Agent that does RAG based on a user's question, RAG content & history"
|
||||
changes: "Initial version"
|
||||
@@ -0,0 +1,9 @@
|
||||
version: "1.0.0"
|
||||
name: "Knowledge Service"
|
||||
configuration: {}
|
||||
permissions: {}
|
||||
metadata:
|
||||
author: "Josako"
|
||||
date_added: "2025-04-02"
|
||||
changes: "Initial version"
|
||||
description: "Partner providing catalog content"
|
||||
21
config/retrievers/evie_partner/PARTNER_RAG/1.0.0.yaml
Normal file
21
config/retrievers/evie_partner/PARTNER_RAG/1.0.0.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
version: "1.0.0"
|
||||
name: "Standard RAG Retriever"
|
||||
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: {}
|
||||
metadata:
|
||||
author: "Josako"
|
||||
date_added: "2025-01-24"
|
||||
changes: "Initial version"
|
||||
description: "Retrieving all embeddings conform the query"
|
||||
@@ -0,0 +1,34 @@
|
||||
version: "1.0.0"
|
||||
name: "Partner RAG Specialist"
|
||||
framework: "crewai"
|
||||
chat: true
|
||||
configuration: {}
|
||||
arguments: {}
|
||||
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: "PARTNER_RAG_AGENT"
|
||||
version: "1.0"
|
||||
tasks:
|
||||
- type: "PARTNER_RAG_TASK"
|
||||
version: "1.0"
|
||||
metadata:
|
||||
author: "Josako"
|
||||
date_added: "2025-07-16"
|
||||
changes: "Initial version"
|
||||
description: "Q&A through Partner RAG Specialist (for documentation purposes)"
|
||||
@@ -1,4 +1,4 @@
|
||||
version: "1.0.0"
|
||||
version: "1.1.0"
|
||||
name: "RAG Specialist"
|
||||
framework: "crewai"
|
||||
chat: true
|
||||
|
||||
@@ -1,53 +0,0 @@
|
||||
version: 1.0.0
|
||||
name: "Standard RAG Specialist"
|
||||
framework: "langchain"
|
||||
chat: true
|
||||
configuration:
|
||||
specialist_context:
|
||||
name: "Specialist Context"
|
||||
type: "text"
|
||||
description: "The context to be used by the specialist."
|
||||
required: false
|
||||
temperature:
|
||||
name: "Temperature"
|
||||
type: "number"
|
||||
description: "The inference temperature to be used by the specialist."
|
||||
required: false
|
||||
default: 0.3
|
||||
arguments:
|
||||
language:
|
||||
name: "Language"
|
||||
type: "str"
|
||||
description: "Language code to be used for receiving questions and giving answers"
|
||||
required: true
|
||||
query:
|
||||
name: "query"
|
||||
type: "str"
|
||||
description: "Query to answer"
|
||||
required: true
|
||||
results:
|
||||
detailed_query:
|
||||
name: "detailed_query"
|
||||
type: "str"
|
||||
description: "The query detailed with the Chat Session History."
|
||||
required: true
|
||||
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
|
||||
metadata:
|
||||
author: "Josako"
|
||||
date_added: "2025-01-08"
|
||||
changes: "Initial version"
|
||||
description: "A Specialist that performs standard Q&A"
|
||||
22
config/tasks/evie_partner/PARTNER_RAG_TASK/1.0.0.yaml
Normal file
22
config/tasks/evie_partner/PARTNER_RAG_TASK/1.0.0.yaml
Normal file
@@ -0,0 +1,22 @@
|
||||
version: "1.0.0"
|
||||
name: "RAG Task"
|
||||
task_description: >
|
||||
Answer the question based on the following context, and taking into account the history of the discussion. Try not to
|
||||
repeat answers already given in the recent history, unless confirmation is required or repetition is essential to
|
||||
give a coherent answer.
|
||||
Answer the end user in the language used in his/her question.
|
||||
If the question cannot be answered using the given context, answer "I have insufficient information to answer this
|
||||
question."
|
||||
Context (in between triple $):
|
||||
$$${context}$$$
|
||||
History (in between triple €):
|
||||
€€€{history}€€€
|
||||
Question (in between triple £):
|
||||
£££{question}£££
|
||||
expected_output: >
|
||||
Your answer.
|
||||
metadata:
|
||||
author: "Josako"
|
||||
date_added: "2025-07-16"
|
||||
description: "A Task that gives RAG-based answers"
|
||||
changes: "Initial version"
|
||||
@@ -1,9 +1,5 @@
|
||||
# config/type_defs/partner_service_types.py
|
||||
PARTNER_SERVICE_TYPES = {
|
||||
"REFERRAL_SERVICE": {
|
||||
"name": "Referral Service",
|
||||
"description": "Partner referring new customers",
|
||||
},
|
||||
"KNOWLEDGE_SERVICE": {
|
||||
"name": "Knowledge Service",
|
||||
"description": "Partner providing catalog content",
|
||||
|
||||
@@ -4,6 +4,11 @@ RETRIEVER_TYPES = {
|
||||
"name": "Standard RAG Retriever",
|
||||
"description": "Retrieving all embeddings from the catalog conform the query",
|
||||
},
|
||||
"PARTNER_RAG": {
|
||||
"name": "Partner RAG Retriever",
|
||||
"description": "RAG intended for partner documentation",
|
||||
"partner": "evie_partner"
|
||||
},
|
||||
"TRAICIE_ROLE_DEFINITION_BY_ROLE_IDENTIFICATION": {
|
||||
"name": "Traicie Role Definition Retriever by Role Identification",
|
||||
"description": "Retrieves relevant role information for a given role",
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
# Specialist Types
|
||||
SPECIALIST_TYPES = {
|
||||
"STANDARD_RAG_SPECIALIST": {
|
||||
"name": "Standard RAG Specialist",
|
||||
"description": "Standard Q&A through RAG Specialist",
|
||||
},
|
||||
"RAG_SPECIALIST": {
|
||||
"name": "RAG Specialist",
|
||||
"description": "Q&A through RAG Specialist",
|
||||
},
|
||||
"PARTNER_RAG_SPECIALIST": {
|
||||
"name": "Partner RAG Specialist",
|
||||
"description": "Q&A through Partner RAG Specialist (for documentation purposes)",
|
||||
"partner": "evie_partner"
|
||||
},
|
||||
"SPIN_SPECIALIST": {
|
||||
"name": "Spin Sales Specialist",
|
||||
"description": "A specialist that allows to answer user queries, try to get SPIN-information and Identification",
|
||||
|
||||
Reference in New Issue
Block a user