keepme-backend / src /utils /_openai_tools.py
ramanjitsingh1368's picture
Refactor Dockerfile and clean up unused schemas; update Redis client initialization and environment configuration
a3aa6c1
_OPENAI_TOOLS = [
{
"type": "function",
"name": "get_relevant_information",
"description": "Get relevant information(Context) to better respond to user queries",
"parameters": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "The user query to get relevant information for",
},
},
"required": ["query"],
},
},
{
"type": "function",
"name": "get_available_salesperson_meetings",
"description": "Get all the salespersons ids that can be used to check available slots and to schedule meetings",
},
{
"type": "function",
"name": "get_available_slots",
"description": "Get available slots for a salesperson meeting",
"parameters": {
"type": "object",
"properties": {
"salesperson_meeting_id": {
"type": "string",
"description": "The ID of the salesperson meeting",
},
"timezone": {
"type": "string",
"description": "The timezone for the available slots. It must be a tz identifier like America/New_York, Asia/Kolkata, Cuba, etc.Note: We have regional calenders for APAC, EMEA, and North America. Please use the timezone accordingly. The region must be asked explicitly from the user and hence confirmed too.",
},
},
"required": ["salesperson_meeting_id", "timezone"],
},
},
{
"type": "function",
"name": "schedule_meeting",
"description": "Schedule a meeting",
"parameters": {
"type": "object",
"properties": {
"user_id": {
"type": "string",
"description": "The ID of the user, default: DEFAULT_USER, Do not explicitly ask for this",
"default": "DEFAULT_USER",
},
"salesperson_meeting_id": {
"type": "string",
"description": "The ID of the salesperson meeting, this can be obtained from get_available_salesperson_meetings",
},
"preferred_start_time": {
"type": "string",
"format": "date-time",
"description": "The preferred start time for the meeting. format: YYYY-MM-DD HH:MM:SS, this can be obtained from get_available_slots",
"example": "2022-12-17 12:00:00",
},
"duration": {
"type": "integer",
"description": "The duration of the meeting in minutes",
},
"timezone": {
"type": "string",
"description": "The timezone for the available slots. It must be a tz identifier like America/New_York, Asia/Kolkata, Cuba, etc.Note: We have regional calenders for APAC, EMEA, and North America. Please use the timezone accordingly. The region must be asked explicitly from the user and hence confirmed too.",
},
"locale": {
"type": "string",
"description": "The locale for the meeting",
"default": "en-us",
},
},
"required": [
"user_id",
"salesperson_meeting_id",
"preferred_start_time",
"duration",
"timezone",
],
},
},
]