Joel 299c51ebc4 feat: npm sdk to 2.0 to fix steaming problem (#326) 1 年之前
..
.gitignore db896255d6 Initial commit 1 年之前
README.md 3a7f58d2a6 Feature/fix streaming mode (#324) 1 年之前
babel.config.json 3117619ef3 Feature/add test to nodejs sdk (#31) 1 年之前
index.js 3a7f58d2a6 Feature/fix streaming mode (#324) 1 年之前
index.test.js 3117619ef3 Feature/add test to nodejs sdk (#31) 1 年之前
package.json 299c51ebc4 feat: npm sdk to 2.0 to fix steaming problem (#326) 1 年之前

README.md

Dify Node.js SDK

This is the Node.js SDK for the Dify API, which allows you to easily integrate Dify into your Node.js applications.

Install

npm install dify-client

Usage

After installing the SDK, you can use it in your project like this:

import { DifyClient, ChatClient, CompletionClient } from 'dify-client'

const API_KEY = 'your-api-key-here'
const user = `random-user-id`
const inputs = {
  name: 'test name a'
}
const query = "Please tell me a short story in 10 words or less."

// Create a completion client
const completionClient = new CompletionClient(API_KEY)
// Create a completion message
completionClient.createCompletionMessage(inputs, query, responseMode, user)

// Create a chat client
const chatClient = new ChatClient(API_KEY)
// Create a chat message in stream mode
const response = await chatClient.createChatMessage(inputs, query, user, true, null)
const stream = response.data;
stream.on('data', data => {
    console.log(data);
});
stream.on('end', () => {
    console.log("stream done");
});
// Fetch conversations
chatClient.getConversations(user)
// Fetch conversation messages
chatClient.getConversationMessages(conversationId, user)
// Rename conversation
chatClient.renameConversation(conversationId, name, user)


const client = new DifyClient(API_KEY)
// Fetch application parameters
client.getApplicationParameters(user)
// Provide feedback for a message
client.messageFeedback(messageId, rating, user)

Replace 'your-api-key-here' with your actual Dify API key.Replace 'your-app-id-here' with your actual Dify APP ID.

License

This SDK is released under the MIT License.