В чем преимущества частного развертывания DIfy?

Ответы ИИОпубликовано 6 месяцев назад Круг обмена ИИ
9.9K 00

Dify Это движок и платформа для разработки приложений искусственного интеллекта.

Если вам необходимо разработать приложение ИИ корпоративного уровня или приложение для интеллектуального тела, то, как правило, есть несколько вариантов:

- Пишите весь код вручную и самостоятельно взаимодействуйте со всеми видами API-интерфейсов крупных поставщиков моделей.

- Используйте некоторые SDK с инкапсуляцией, например AI SDK от Vercel.

- Используйте платформу для разработки приложений с искусственным интеллектом, например Dify.

Продукты, более похожие на Dify, имеют "пряжка". Но Button - это чистый облачный SaaS, не совсем подходящий для того, чтобы брать и поставлять клиентам как часть решения. Поэтому Dify, с его открытым исходным кодом и простотой частного развертывания, является лучшим выбором.

 

Лицензия Dify является коммерчески доступной

Хотя Dify использует протокол Apache с открытым исходным кодом, существуют некоторые дополнительные ограничения на коммерческое использование:

1. Не допускается использование служб с несколькими арендаторами;

2. Изменение логотипа и информации об авторских правах интерфейса Dify Web Console не допускается.

В целом, это соглашение с открытым исходным кодом все еще очень слабое. Если вы развертываете отдельный набор для каждого корпоративного клиента и не позволяете им использовать веб-консоль Dify, вы не нарушаете его.

Другими словами, вы можете создать приложение smartbody, не написав ни строчки кода, используя инструменты визуализации Dify Web Console, а затем интегрировать автоматически созданные API в свое собственное решение.

 

Нужно ли мне использовать Dify для моего проекта?

Вам не обязательно использовать Dify для разработки приложения "умного тела"; по сути, вы можете интегрировать API OpenAI со старым бэкендом на Java 8 и Spring Boot с тем же успехом.

Однако есть некоторые особенности приложений для "умного тела", которые сводятся к постоянной отладке подсказок и обработке данных базы знаний. Использование Dify может значительно улучшить опыт и эффективность разработки. Вы не можете просто изменить подсказки и выпустить новую версию.

Бэкэнд Dify разработан на языке Python, поскольку большинство компонентов экосистемы, связанных с искусственным интеллектом, имеют пакеты Python в непосредственном доступе. В отличие от бэкендов на Java, которые часто используются в корпоративных приложениях, их рекомендуется развертывать автономно, отдельно от бизнес-кластеров.

 

Обзор компонентов Dify

Dify использует общую архитектуру разделения фронт-энда и бэк-энда, с очень большим количеством компонентов и довольно гибкими методами развертывания.

Решение для развертывания Docker Compose, рекомендованное на официальном сайте Dify, можно использовать только для локальной разработки и опыта. В производственной среде следует использовать K8s или другие высокодоступные решения для развертывания в соответствии с вашими потребностями.

Если взять в качестве примера Dify версии 0.15.3, то для развертывания в производственной среде потребуются следующие компоненты:

важный компонент

- апи

- рабочий

- сеть

основной компонент

- postgres

- редис

- песочница

- ssrf_proxy

- сертбот

- nginx

- уавиат

Взаимосвязь между компонентами показана ниже

DIfy 私有化部署的优势有哪些?

 

Подробное описание архитектурных слоев

задняя часть

Бэкэнд Dify включает в себя

- "api" - служба Python flask, запущенная с помощью gunicorn;

- "Рабочий", запускаемый с помощью celery, потребляет асинхронные задачи из очереди redis. Эти задачи - импорт файлов наборов данных и обновление документов наборов данных.

передовая часть чего-л.

Фронтенд "веб" разработан с помощью Next.js. Он собирается и запускается с помощью pm2 (node).

уровень доступа

Nginx используется для перенаправления веб-запросов к api или web, а certbot - для автоматического управления сертификатами HTTPS.

слой хранения

Уровень хранения данных Dify использует

- Реляционная база данных PostgreSQL

- База данных NoSQL/кэш Redis

- векторная база данныхПо умолчанию используется Weaviate.

безопасность

Dify, как платформа для разработки приложений, доступна в качестве визуального инструмента для организации узлов рабочего процесса для обработки бизнес-логики.

Узел рабочего процесса позволяет пользователю выполнять код Python/NodeJS, поэтому необходим механизм "песочницы", чтобы ограничить пользователя от выполнения рискованных операций.

В работе задействованы следующие два модуля

- "Песочница" была разработана на языке Go.

- "ssrf_proxy" - это сетевой выход, настроенный на squid.

 

Сравнение с LangChain

LangChain - старейший фреймворк для разработки LLM-приложений. Как видно из рисунка ниже, Dify превосходит LangChain по всем параметрам.

DIfy 私有化部署的优势有哪些?

 

Частное развертывание Dify в производственных средах

Если вам нужно настроить приложения AI Intelligent Body для своих клиентов и предоставить решения AI для вертикальных отраслей, рассмотрите возможность развертывания Dify privately в производственной среде.

По следующим двум причинам может потребоваться модификация и глубокая настройка кода Dify:

1. открыть внутренние данные предприятия, в частности, собрать структурированные внутренние данные в форму, которая может быть использована для RAG базы знаний.

2. открыть аутентификацию для входа в систему, чтобы интеллекты понимали свою идентичность и могли предоставлять персонализированные услуги.

© заявление об авторских правах

Похожие статьи

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...