2
0

Add Dify.AI block (#1183)

Implemented [Dify.AI](https://dify.ai) Block
- Dify Features:
-- Can Create Multiple Chat Bots
-- Assign Knowledge base/vector database to chat bots
-- Variables send by client to be used in the prompt
-- Options of custom and cloud AI LLMs to be changed with on click

- Dify API Function/Action Implemented
-- Create Chat Message (Takes in input variables, query, conversation
id, user id and returns answer, usage metadata and conversation id)

- Future Implantations with this block
-- Streaming response 
-- File Upload for GPT Vision
-- Speech to text action

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced the ability to create chat messages within the Dify
platform.
	- Added secure authentication for Dify.AI accounts.
- Implemented a new Dify.AI block with integrated chat message creation
and logo display.
	- Enabled Dify.AI block in the repository for user access.

- **Enhancements**
- Enhanced security for API key input by changing it to a password
field.

- **Documentation**
	- Included new types to support Dify AI service responses.

- **Refactor**
- Updated schema imports and array listings to include the new Dify.AI
block.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Baptiste Arnaud <baptiste.arnaud95@gmail.com>
This commit is contained in:
Abdullah bin Amir
2024-01-29 13:52:29 +04:00
committed by GitHub
parent cf101d6cf6
commit 0817fbaebb
15 changed files with 206 additions and 1 deletions

View File

@@ -101,6 +101,18 @@ export const option = {
z.enum(values).optional(),
number: z.number().or(variableStringSchema).optional(),
array: <T extends z.ZodTypeAny>(schema: T) => z.array(schema).optional(),
keyValueList: z
.array(
z.object({
key: z.string().optional().layout({
label: 'Key',
}),
value: z.string().optional().layout({
label: 'Value',
}),
})
)
.optional(),
discriminatedUnion: <
T extends string,
J extends [