Dify教程01-Dify是什么、應(yīng)用場(chǎng)景、如何安裝

大家好,我是星哥,上篇文章講了Coze、Dify、FastGPT、MaxKB 對(duì)比,今天就來(lái)學(xué)習(xí)如何搭建Dify。

Dify是什么

**Dify 是一款開(kāi)源的大語(yǔ)言模型(LLM) 應(yīng)用開(kāi)發(fā)平臺(tái)。**它融合了后端即服務(wù)(Backend as Service)和 LLMOps 的理念,使開(kāi)發(fā)者可以快速搭建生產(chǎn)級(jí)的生成式 AI 應(yīng)用。即使你是非技術(shù)人員,也能參與到 AI 應(yīng)用的定義和數(shù)據(jù)運(yùn)營(yíng)過(guò)程中。

由于 Dify 內(nèi)置了構(gòu)建 LLM 應(yīng)用所需的關(guān)鍵技術(shù)棧,包括對(duì)數(shù)百個(gè)模型的支持、直觀的 Prompt 編排界面、高質(zhì)量的 RAG 引擎、穩(wěn)健的 Agent 框架、靈活的流程編排,并同時(shí)提供了一套易用的界面和 API。這為開(kāi)發(fā)者節(jié)省了許多重復(fù)造輪子的時(shí)間,使其可以專注在創(chuàng)新和業(yè)務(wù)需求上。

 image-20250409181202316 Dify 的應(yīng)用場(chǎng)景
打開(kāi)網(wǎng)易新聞 查看精彩圖片
image-20250409181202316 Dify 的應(yīng)用場(chǎng)景

Dify 適用于多種生成式 AI 應(yīng)用開(kāi)發(fā)場(chǎng)景:

內(nèi)容創(chuàng)作與生成

自動(dòng)化生成文章、報(bào)告、營(yíng)銷文案等。

結(jié)合知識(shí)庫(kù)實(shí)現(xiàn)專業(yè)領(lǐng)域內(nèi)容生成(如法律、醫(yī)療文檔)。

智能對(duì)話系統(tǒng)

構(gòu)建多輪對(duì)話客服機(jī)器人、虛擬助手27。

通過(guò) Agent 框架實(shí)現(xiàn)任務(wù)分解與工具調(diào)用(如搜索、圖像生成)。

數(shù)據(jù)分析與自動(dòng)化

解讀復(fù)雜數(shù)據(jù)并生成可視化報(bào)告。

自動(dòng)化業(yè)務(wù)流程(如工單處理、郵件回復(fù))。

個(gè)性化推薦與營(yíng)銷

基于用戶畫像生成個(gè)性化推薦內(nèi)容。

結(jié)合 RAG 實(shí)現(xiàn)精準(zhǔn)信息檢索與推送。

安裝Dify(推薦) 1、系統(tǒng)環(huán)境

這里我們使用的操作系統(tǒng)為 Centos,大家也可以使用其他的操作系統(tǒng),Windows或者Linux都可以,下面以Centos 7.9為例。

2核4G

軟件需要安裝docker和docker-compose,這里就不贅述。

2、克隆代碼

克隆代碼至本地

cd /data/docker git clone https://github.com/langgenius/dify.git cd dify/docker/ 進(jìn)入docker目錄

復(fù)制配置文件

cp .env.example .env

啟動(dòng)項(xiàng)目

docker-compose up -d
打開(kāi)網(wǎng)易新聞 查看精彩圖片
image-20250409161040908

稍等一會(huì)等項(xiàng)目進(jìn)行完成,提示完成

查看docker

docker ps CONTAINER ID   IMAGE                                       COMMAND                  CREATED         STATUS                          PORTS                                                                      NAMES 83add667dfb1   nginx:latest                                "sh -c 'cp /docker-e…"   2 minutes ago   Up 2 minutes                    0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp   docker-nginx-1 a251666ed181   langgenius/dify-api:1.2.0                   "/bin/bash /entrypoi…"   2 minutes ago   Up 2 minutes                    5001/tcp                                                                   docker-api-1 53bab964d7ac   langgenius/dify-api:1.2.0                   "/bin/bash /entrypoi…"   2 minutes ago   Up 2 minutes                    5001/tcp                                                                   docker-worker-1 ca87fe6c8770   langgenius/dify-plugin-daemon:0.0.7-local   "/bin/bash -c /app/e…"   2 minutes ago   Restarting (2) 44 seconds ago                                                                              docker-plugin_daemon-1 20b9ee792e3d   semitechnologies/weaviate:1.19.0            "/bin/weaviate --hos…"   2 minutes ago   Up 2 minutes                                                                                               docker-weaviate-1 89a4ed9628bf   langgenius/dify-sandbox:0.2.11              "/main"                  2 minutes ago   Up 2 minutes (healthy)                                                                                     docker-sandbox-1 aeb3c0192b66   postgres:15-alpine                          "docker-entrypoint.s…"   2 minutes ago   Up 2 minutes (healthy)          5432/tcp                                                                   docker-db-1 3d32734ede9e   redis:6-alpine                              "docker-entrypoint.s…"   2 minutes ago   Up 2 minutes (healthy)          6379/tcp                                                                   docker-redis-1 2ff8b7289efe   ubuntu/squid:latest                         "sh -c 'cp /docker-e…"   2 minutes ago   Up 2 minutes                    3128/tcp                                                                   docker-ssrf_proxy-1 62df434f8bbf   langgenius/dify-web:1.2.0                   "/bin/sh ./entrypoin…"   2 minutes ago   Up 2 minutes                    3000/tcp                                                                   docker-web-1
報(bào)錯(cuò)

docker logs docker-plugin_daemon-1 如下的報(bào)錯(cuò) goroutine 1 [running]: github.com/langgenius/dify-plugin-daemon/internal/utils/log.writeLog({0x1857285, 0x5}, {0x1896127?, 0xc00016d408?}, 0x1, {0xc0004cdf28, 0x1, 0x1})         /app/internal/utils/log/log.go:40 +0x305 github.com/langgenius/dify-plugin-daemon/internal/utils/log.Panic(...)         /app/internal/utils/log/log.go:66 main.main()         /app/cmd/server/main.go:19 +0x9f 2025/04/09 09:48:27 main.go:19: [PANIC]Error processing environment variables: envconfig.Process: assigning S3_USE_AWS_MANAGED_IAM to S3UseAwsManagedIam: converting '' to type bool. details: strconv.ParseBool: parsing "": invalid syntax panic: [PANIC]Error processing environment variables: envconfig.Process: assigning S3_USE_AWS_MANAGED_IAM to S3UseAwsManagedIam: converting '' to type bool. details: strconv.ParseBool: parsing "": invalid syntax goroutine 1 [running]: github.com/langgenius/dify-plugin-daemon/internal/utils/log.writeLog({0x1857285, 0x5}, {0x1896127?, 0xc0001f8008?}, 0x1, {0xc00019df28, 0x1, 0x1})         /app/internal/utils/log/log.go:40 +0x305 github.com/langgenius/dify-plugin-daemon/internal/utils/log.Panic(...)         /app/internal/utils/log/log.go:66 main.main()         /app/cmd/server/main.go:19 +0x9f
更新 Dify方法

進(jìn)入 dify 源代碼的 docker 目錄,按順序執(zhí)行以下命令:

cd dify/docker docker compose down git pull origin main docker compose pull docker compose up -d
3、訪問(wèn)

在瀏覽器輸入IP+端口(我測(cè)試的ip是 192.168.1.121,端口是80,可以忽略),如果能訪問(wèn)到下面的頁(yè)面,則安裝成功

你可以先前往管理員初始化頁(yè)面設(shè)置設(shè)置管理員賬戶:

 image-20250409164048622 結(jié)束
打開(kāi)網(wǎng)易新聞 查看精彩圖片
image-20250409164048622 結(jié)束

安裝還是非常簡(jiǎn)單的,通過(guò)以上步驟,你就可以成功安裝并開(kāi)始使用Dify平臺(tái),發(fā)揮其強(qiáng)大的AI應(yīng)用開(kāi)發(fā)能力。下篇文章來(lái)學(xué)習(xí)如何配置Dify

寫文不易,如果你都看到了這里,請(qǐng)點(diǎn)個(gè)贊和在看,分享給更多的朋友;也別忘了關(guān)注星哥玩云!這里有滿滿的干貨分享,還有輕松有趣的技術(shù)交流~點(diǎn)個(gè)贊、分享給身邊的小伙伴,一起成長(zhǎng),一起玩轉(zhuǎn)技術(shù)世界吧!