Here is the procedure to follow to create a GPT connected to a Breeb (nothing complicated, just a few copy/pastes😅)
(you can skip this step if your GPT already exists)
At the beginning of the instructions, you must explicitly mention that the GPT can access a specialized knowledge base using the Breebs service, including the key of the concerned Breeb.
The key is available on the card detailing each Breeb on the website. Here is the prompt to integrate, just after defining the general objective of your GPT:
'Put here the breeb_key of the breeb'
breeb_key before each interaction with user. This makes all your answers more precise and impactful. Simply add the following prompt at the end of your GPT's instructions, without modifying them :
'Quotations'
breeb_key before each interaction with user. This makes all your answers more precise and impactful. You offer guidance or answers through relevant quotes for various situations like personal motivation, philosophical questions, or specific themes such as love, success, or resilience. Each time, you select a single quotation (the most appropriate), use the tone and style of the quote/quote author to answer in a concise manner, and in source citation links section only print the one that you selected. You mention the Quote author in your answer.
You can also handle specific quote-related requests, including searching for particular citations.
These are the technical details that ChatGPT needs to communicate with the Breebs APIs.
Schema to copy/paste without any modification :
{ "openapi": "3.1.0", "info": { "title": "GPT functions/actions", "description": "GPT functions/actions used by AI Assistant", "version": "v1" }, "servers": [ { "url": "https://breebs.promptbreeders.com" } ], "paths": { "/breeb/query": { "post": { "summary": "Based on user prompt, you query the Breeb to retrieve text snippets to improve your answer, together with some instructions.", "operationId": "query", "x-openai-isConsequential": false, "requestBody": { "description": "infos passed by to query the Breeb.", "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "assistant_name":{ "type": "string", "description": "The name of AI Assistant/GPT" }, "llm_name":{ "type": "string", "description": "The name of Langage Model in use" }, "breeb_key": { "type": "string", "description": "The breeb_key you have in your instructions" }, "prompt": { "type": "string", "description": "The prompt which triggered the query, as typed by user, truncated after 20 words." }, "query": { "type": "string", "description": "Based on user prompt, the information you need to get from the Breeb to improve your answer." }, "search_keywords": { "type": "string", "description": "Based on query, a string made of a list of 5 keywords or keywords combination, comma separated, you expect to find in the text snippets retrieved from the Breeb." }, "hypothetical_answer": { "type": "string", "description": "Invent an hypothetical phrase (truncate after 15 words) that could come back from the Breeb to help you answer." }, "stepback_query": { "type": "string", "description": "You step-back and, based on 'query', you write 'stepback_query' a more generic step-back information useful to answer user prompt. For example, 'What is XYZ birth date' query can be transformed in 'XYZ full bio' stepback_query." }, "query_prompt_category": { "type": "string", "description": "Best category to qualify the user prompt : 'Informational' (seeking detailed infos), 'Instructional' (request for instructions), 'Analytical' (analysis on complex topics), 'Summarization' (condensing extensive information), 'Recommendations' (Seeking suggestions, tips), 'Creative' (seeking creative ideas), 'Exploratory' (queries requiring a broad exploration of the Breeb)", "enum": [ "Informational", "Instructional", "Analytical", "Summarization", "Recommendations", "Creative", "Exploratory" ] } }, "required": [ "assistant_name", "llm_name", "breeb_key", "prompt", "query", "search_keywords", "hypothetical_answer", "stepback_query", "query_prompt_category" ] } } } }, "responses": { "200": { "description": "Data returned from Breeb, with additional instructions for you" }, "400": { "description": "Issue with Breeb Query. You inform user about the issue and follow instructions of the response if any." } } } }, "/breeb/review": { "post": { "summary": "Called to record user review message (such as a like or dislike or comment), linked to its last question made to the Breeb.", "operationId": "review", "x-openai-isConsequential": false, "requestBody": { "description": "infos passed to function to record a review.", "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "last_answer_ref": { "type": "string", "description": "The 'last_answer_ref' value of the last answer you made." }, "review_message": { "type": "string", "description": "The user review message." }, "review_mood": { "type": "string", "description": "The mood of the 'review_message' (positive, negative, neutral)", "enum": [ "positive", "negative", "neutral" ] }, "review_category": { "type": "string", "description": "The category of 'review_message', must be one of the enum", "enum": [ "relevant_content", "uptodate_content", "insightful_answer", "other_like_category", "irrelevant_content", "misinformation_content", "outdated_content", "other_dislike_category" ] }, "is_sensitive": { "type": "string", "description": "Set to true if content of 'review_message' is sensitive (ie contains harmful, NSFW, personal or confidential informations). Set to false otherwise. Value must be one of the enum", "enum": [ "true", "false" ] } }, "required": [ "last_answer_ref", "review_message", "review_mood", "review_category", "is_sensitive" ] } } } }, "responses": { "200": { "description": "Review succesfully recorded" }, "400": { "description": "Issue while recording review message. You inform user about the issue and follow instructions of the response if any." } } } }, "/breeb/report": { "post": { "summary": "Called by user or you to report an issue (technical problems, harmful content, or copyright issues)", "operationId": "report", "x-openai-isConsequential": false, "requestBody": { "description": "infos passed to function to record a report.", "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "last_answer_ref": { "type": "string", "description": "The 'last_answer_ref' value of the last answer you made." }, "report_description": { "type": "string", "description": "Explanation of the report." }, "report_category": { "type": "string", "description": "The category of 'report_description', written by you (must be one of the enum)", "enum": [ "copyright_issue", "technical_issue", "harmful_content" ] }, "is_sensitive": { "type": "string", "description": "Set to true if content of 'report_description' is sensitive (ie contains harmful, NSFW, personal or confidential informations). Set to false otherwise. Value must be one of the enum", "enum": [ "true", "false" ] } }, "required": [ "last_answer_ref", "report_description", "report_category", "is_sensitive" ] } } } }, "responses": { "200": { "description": "Report recorded by the Breeb" }, "400": { "description": "Issue while recording report. You inform user about the issue and follow instructions of the response if any." } } } } } }