Description
Use Cases
Summarize conversations/meetings/chats/emails/β¦
You can have Summary field for Intercom Conversation and it will be filled automatically via Summarize command, same can be applicable to meeting notes, and other databases. Then you can create a Feed View that shows just Summary field.
Sentiment Score of a conversation
Analyze sentiment of a conversation, set some score into Sentiment Score field and calculate average or draw trends charts, or spot conversations with bad sentiments and do something about it.
Generate alerts when conversations turn stormy.
Extract data into fields
Extract Zip from messy address field and put it into Zip Code Field.
Translate a support chat to English
Sometimes we communicate with customers in other languages, like Russian. However, it is much better to store communications in Fibery in a single common language. Thus when the chat is closed, it can be automatically translated to English translated content can be set to a new Field like English Version.
As a simple solution there can be two commands.
Detect a language and set it into a Language field
Create command Translate to {{Language}}
π₯² NOTE: Conversations can be long and 3000 words limit makes this case limited.
Generate sample data
Provide some samples to AI and ask to generate a set of similar entities
[???]
Solution
Call AI action
Admin will be able to configure parametrized prompts that will return some text and Fibery will try to put this text into fields.
Only two field types will be supported from the start:
Same things should work for Call AI action.
How it will work:
Prompt can be parametrized, like {{Name}} or {{Feature.Name}} can be added into it for the current entity
For Number field we try to convert and save it. If conversion is not possible, Fibery ignores the field and does not update it (but adds a record into Activity log)
NOTE: These prompts are stored in automations and are not visible in Rich Edit AI assistance
UI
In general we will reuse the UI that we use for AI assistance in rich text, but with some tweaks (remove Insert, remove Name this command buttons at least).
Important things:
user should be able to run the prompt to correct it right away. However, there is no data for parameter here, so a parameter like ~~{{Name}}~~ will be empty. We should advice user to input real data first to test and then replace it with parameter.
β If a parameters is not valid (non existing field), the rule fails and adds an error into log.
Add help text into this control and a link to a guide
Real data:
π¦ If a person Runs a prompt with {{}} parameters, show a warning "Please test your prompts with real values, not {{}} parameters"
π¦ Give user an option to select some real entity for test
π¦ Validate parameters
If token is not configured, then show Error on Run button β "Please setup AI Assistant token in Workspace Settings"
AI function in rich text templates
In a template for rich edit fields it will be possible to call a function like this
[ai temperature=0.5 maxTokens=300]
Generate a small post about {{Name}}
[/ai]
{! Description !}
<%
const ai = context.getService('ai');
return await ai.prompt(`${Entity.Description}`);
%>
{{Name}}
[[ Generate a small post about {{Name}} ]]
Tokens
Maybe we need to add a special screen where admin can set a token for GPT-3.
Thus we eliminate risk of overusing our own token, but setup is more complex for sureβ¦
OpenAI token setting