- eveai_chat becomes deprecated and should be replaced with SSE - Adaptation of STANDARD_RAG specialist - Base class definition allowing to realise specialists with crewai framework - Implementation of SPIN_SPECIALIST - Implementation of test app for testing specialists (test_specialist_client). Also serves as an example for future SSE-based client - Improvements to startup scripts to better handle and scale multiple connections - Small improvements to the interaction forms and views - Caching implementation improved and augmented with additional caches
182 lines
5.0 KiB
YAML
182 lines
5.0 KiB
YAML
version: "1.0.0"
|
|
name: "Spin Sales Specialist"
|
|
framework: "crewai"
|
|
configuration:
|
|
name:
|
|
name: "name"
|
|
type: "str"
|
|
description: "The name the specialist is called upon."
|
|
required: true
|
|
company:
|
|
name: "company"
|
|
type: "str"
|
|
description: "The name of your company. If not provided, your tenant's name will be used."
|
|
required: false
|
|
products:
|
|
name: "products"
|
|
type: "List[str]"
|
|
description: "The products or services you're providing"
|
|
required: false
|
|
product_information:
|
|
name: "product_information"
|
|
type: "text"
|
|
description: "Information on the products you are selling, such as ICP (Ideal Customer Profile), Pitch, ..."
|
|
required: false
|
|
engagement_options:
|
|
name: "engagement_options"
|
|
type: "text"
|
|
description: "Engagement options such as email, phone number, booking link, ..."
|
|
tenant_language:
|
|
name: "tenant_language"
|
|
type: "str"
|
|
description: "The language code used for internal information. If not provided, the tenant's default language will be used"
|
|
required: false
|
|
nr_of_questions:
|
|
name: "nr_of_questions"
|
|
type: "int"
|
|
description: "The maximum number of questions to formulate extra questions"
|
|
required: true
|
|
default: 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 or response to process"
|
|
required: true
|
|
identification:
|
|
name: "identification"
|
|
type: "text"
|
|
description: "Initial identification information when available"
|
|
required: false
|
|
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
|
|
spin:
|
|
situation:
|
|
name: "situation"
|
|
type: "str"
|
|
description: "A description of the customer's current situation / context"
|
|
required: false
|
|
problem:
|
|
name: "problem"
|
|
type: "str"
|
|
description: "The current problems the customer is facing, for which he/she seeks a solution"
|
|
required: false
|
|
implication:
|
|
name: "implication"
|
|
type: "str"
|
|
description: "A list of implications"
|
|
required: false
|
|
needs:
|
|
name: "needs"
|
|
type: "str"
|
|
description: "A list of needs"
|
|
required: false
|
|
additional_info:
|
|
name: "additional_info"
|
|
type: "str"
|
|
description: "Additional information that may be commercially interesting"
|
|
required: false
|
|
lead_info:
|
|
lead_personal_info:
|
|
name:
|
|
name: "name"
|
|
type: "str"
|
|
description: "name of the lead"
|
|
required: "true"
|
|
job_title:
|
|
name: "job_title"
|
|
type: "str"
|
|
description: "job title"
|
|
required: false
|
|
email:
|
|
name: "email"
|
|
type: "str"
|
|
description: "lead email"
|
|
required: "false"
|
|
phone:
|
|
name: "phone"
|
|
type: "str"
|
|
description: "lead phone"
|
|
required: false
|
|
additional_info:
|
|
name: "additional_info"
|
|
type: "str"
|
|
description: "additional info on the lead"
|
|
required: false
|
|
lead_company_info:
|
|
company_name:
|
|
name: "company_name"
|
|
type: "str"
|
|
description: "Name of the lead company"
|
|
required: false
|
|
industry:
|
|
name: "industry"
|
|
type: "str"
|
|
description: "The industry of the company"
|
|
required: false
|
|
company_size:
|
|
name: "company_size"
|
|
type: "int"
|
|
description: "The size of the company"
|
|
required: false
|
|
company_website:
|
|
name: "company_website"
|
|
type: "str"
|
|
description: "The main website for the company"
|
|
required: false
|
|
additional_info:
|
|
name: "additional_info"
|
|
type: "str"
|
|
description: "Additional information that may be commercially interesting"
|
|
required: false
|
|
agents:
|
|
- type: "RAG_AGENT"
|
|
version: "1.0"
|
|
- type: "RAG_COMMUNICATION_AGENT"
|
|
version: "1.0"
|
|
- type: "SPIN_DETECTION_AGENT"
|
|
version: "1.0"
|
|
- type: "SPIN_SALES_SPECIALIST_AGENT"
|
|
version: "1.0"
|
|
- type: "IDENTIFICATION_AGENT"
|
|
version: "1.0"
|
|
- type: "RAG_COMMUNICATION_AGENT"
|
|
version: "1.0"
|
|
tasks:
|
|
- type: "RAG_TASK"
|
|
version: "1.0"
|
|
- type: "SPIN_DETECT_TASK"
|
|
version: "1.0"
|
|
- type: "SPIN_QUESTIONS_TASK"
|
|
version: "1.0"
|
|
- type: "IDENTIFICATION_DETECTION_TASK"
|
|
version: "1.0"
|
|
- type: "IDENTIFICATION_QUESTIONS_TASK"
|
|
version: "1.0"
|
|
- type: "RAG_CONSOLIDATION_TASK"
|
|
version: "1.0"
|
|
metadata:
|
|
author: "Josako"
|
|
date_added: "2025-01-08"
|
|
changes: "Initial version"
|
|
description: "A Specialist that performs both Q&A as SPIN (Sales Process) activities" |