Skip to main content

A package for interacting with the Dify Service-API

Project description

dify-oapi

A Dify App Service-API Client, using for build a webapp by request Service-API

Usage

First, install dify-oapi python sdk package:

pip install dify-oapi

Write your code with sdk:

  • chat generate with blocking response_mode
from dify_oapi.api.chat.v1.model.chat_request import ChatRequest
from dify_oapi.api.chat.v1.model.chat_request_body import ChatRequestBody
from dify_oapi.api.chat.v1.model.chat_request_file import ChatRequestFile
from dify_oapi.client import Client
from dify_oapi.core.model.request_option import RequestOption

def main():
    client = Client.builder().domain("https://api.dify.ai").build()
    req_file = (
        ChatRequestFile.builder()
        .type("image")
        .transfer_method("remote_url")
        .url("https://cloud.dify.ai/logo/logo-site.png")
        .build()
    )
    req_body = (
        ChatRequestBody.builder()
        .inputs({})
        .query("What are the specs of the iPhone 13 Pro Max?")
        .response_mode("blocking")
        .conversation_id("")
        .user("abc-123")
        .files([req_file])
        .build()
    )
    req = ChatRequest.builder().request_body(req_body).build()
    req_option = RequestOption.builder().api_key("<your-api-key>").build()
    response = client.chat.v1.chat.chat(req, req_option, False)
    # response = await client.chat.v1.chat.achat(req, req_option, False)
    print(response.success)
    print(response.code)
    print(response.msg)
    print(response.answer)


if __name__ == "__main__":
    main()
  • chat generate with streaming response_mode
from dify_oapi.api.chat.v1.model.chat_request import ChatRequest
from dify_oapi.api.chat.v1.model.chat_request_body import ChatRequestBody
from dify_oapi.api.chat.v1.model.chat_request_file import ChatRequestFile
from dify_oapi.client import Client
from dify_oapi.core.model.request_option import RequestOption

def main():
    client = Client.builder().domain("https://api.dify.ai").build()
    req_file = (
        ChatRequestFile.builder()
        .type("image")
        .transfer_method("remote_url")
        .url("https://cloud.dify.ai/logo/logo-site.png")
        .build()
    )
    req_body = (
        ChatRequestBody.builder()
        .inputs({})
        .query("What are the specs of the iPhone 13 Pro Max?")
        .response_mode("streaming")
        .conversation_id("")
        .user("abc-123")
        .files([req_file])
        .build()
    )
    req = ChatRequest.builder().request_body(req_body).build()
    req_option = RequestOption.builder().api_key("<your-api-key>").build()
    response = client.chat.v1.chat.chat(req, req_option, True)
    # response = await client.chat.v1.chat.achat(req, req_option, True)
    for chunk in response:
        print(chunk)


if __name__ == "__main__":
    main()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dify_oapi-0.0.4.tar.gz (29.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dify_oapi-0.0.4-py3-none-any.whl (84.9 kB view details)

Uploaded Python 3

File details

Details for the file dify_oapi-0.0.4.tar.gz.

File metadata

  • Download URL: dify_oapi-0.0.4.tar.gz
  • Upload date:
  • Size: 29.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.10.9 Windows/10

File hashes

Hashes for dify_oapi-0.0.4.tar.gz
Algorithm Hash digest
SHA256 368862bbb0d7469d07af5b5552f3076928ce47b8f0daf7ba171aa117d6da6662
MD5 6265869e1a360c53f6a0e1769a7bebe8
BLAKE2b-256 7ccea06c586f486a0e9277e154329b8a76bc3427050b870bee364999d66ad05a

See more details on using hashes here.

File details

Details for the file dify_oapi-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: dify_oapi-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 84.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.10.9 Windows/10

File hashes

Hashes for dify_oapi-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 ce55dce935b54fa576b147ed49518190838cb1983a0111860c456ce34e575294
MD5 d28e2f9b24511de24450334596c0b589
BLAKE2b-256 89e601b5d79d36c2be604b525b7a5fdcd8b864810f66135caffd70702b618cc3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page