
å®å šç¡æã§èªåå°çš AIãäœãã Dify詊ããŠã¿ã (Gemini䜿çš)
ããã«ã¡ã¯ãRcatã§ãã
ä»åã¯ç°¡åã«èªåçšAIãäœãããšããDifyã詊ããŠã¿ãŸããã
è²ã
è€éãªããšãã§ããããã§ãããä»åã¯å°å
¥ããGoogleã®Geminiãèšå®ããŠå®è¡ãããŸã§ãèšäºã«ããŠãããŸãã
ãã®èšäºã§ã¯èªåã®ããœã³ã³ã«å°å ¥ããæ¹æ³ã玹ä»ããŠããŸããããªã³ã©ã€ã³çããããŸãã®ã§ãé£ãããšæããæ¹ã¯ãªã³ã©ã€ã³çã®æ¹ãæšå¥šããŸãã
æ¬èšäºã®å
容ã¯äžéšå€ãã§ãã
ææ°ã®ããŒãžã§ã³1ã§ã¯ãã¢ãã«ã®èšå®ãããŒãçªå·ãªã©ã®ç°å¢èšå®ã®ä»æ¹ããã®èšäºãšã¯ç°ãªããŸããäžèšã§å¯Ÿå¿ããŠããã®ã§ãã¡ããåç
§ãã ããã
DIfyç³»ç®æ¬¡èšäº
æ¬ã·ãªãŒãºã¯ãã¡ã
次åã¯ãã¡ã
Dify掻çšäŸ
詊éšå匷çšåé¡éã®å šèªåçæ
SNSå šèªååæ
ãã£ããâã³ãã³ã倿
æç« æ ¡æ£&ã«ãæ¯ã
å šèªåæ ¡æ£&翻蚳
S.M.A.R.Tãã§ãã¯èªåå
ç°å¢
Difyã¯ãªã³ã©ã€ã³ã§ãã°ã€ã³ããŠäœ¿ãããšãã§ããŸããã"ç°¡åã«"èªåã§ç°å¢ãæŽããããšãã§ããã®ã§ãèªåã§æŽããããšã«ããŸãã
ãªã³ã©ã€ã³çã®æ¹ã¯"䜿ã£ãŠã¿ã"ãŸã§ã¹ãããããŠãã ããã
å°å
¥ããã®ã¯äžèšã§ç޹ä»ããŠãã24HãµãŒããŒçšPCã§ãã
OSã¯Linux (Ubuntu)ã§ãã
å°å ¥
Difyã®å ¥æ
å ¬åŒãµã€ãããããŠã³ããŒãããŸã
ä»åã¯gitã³ãã³ãã䜿ãã®ã§GitHubãéžã³ãŸã

TeraTermã§ãµãŒããŒã«ãã°ã€ã³ããŠgitã³ãã³ããæã¡ãŸã

rcat@rcat-Green-G5:/SSD/testdify$ git clone ht tps://gius/dify.git #äžå¿URLã¯ãŒãããŠãããŸã
Cloning into 'dify'...
remote: Enumerating objects: 55677, done.
remote: Counting objects: 100% (12214/12214), done.
remote: Compressing objects: 100% (1342/1342), done.
remote: Total 55677 (delta 11352), reused 11132 (delta 10865), pack-reused 43463
Receiving objects: 100% (55677/55677), 32.62 MiB | 20.20 MiB/s, done.
Resolving deltas: 100% (39887/39887), done.
rcat@rcat-Green-G5:/SSD/testdify$ ls
dify
rcat@rcat-Green-G5:/SSD/testdify$ cd dify
rcat@rcat-Green-G5:/SSD/testdify/dify$ ls
AUTHORS LICENSE README_CN.md README_JA.md dev sdks
CONTRIBUTING.md Makefile README_ES.md README_KL.md docker web
CONTRIBUTING_CN.md README.md README_FR.md api imagesDockerãå°å ¥ãã
Dockerã¯ããã°ã©ã ã®å®è¡ç°å¢ãã€ã¡ãŒãžãšããŠå
¬éãã誰ã§ãåçŸãå¯èœã«ãªããã®ã§ãã
Difyã¯Dockerã«ãŠã€ã¡ãŒãžãå
¬éãããŠãããããDockerã䜿ããšã³ãã³ãã²ãšã€ã§èµ·åãã§ããŸã
ç§ã¯æäžèšèšäºã«ãŠã²ãŒã ãµãŒããŒçšã«å°å
¥ããŠããã®ã§ä»åã¯ã¹ã«ãŒã§ãã
ãèªèº«ã§å°å
¥ããããç§ãèŠãèšäºãåèã«ã€ã³ã¹ããŒã«ããŠã¿ãŠãã ããã
https://qiita.com/xx0vlucifer0xx/items/2c84537b67a19b156ec8
Difyãèµ·åãã
ããŠã³ããŒãããããŒã¿ã®äžã«dockerãã©ã«ããããã®ã§ç§»ååŸã"docker compose up"ã§èµ·åãã¯ãçµããã§ãã
æ¢ããæã¯"docker compose stop"ã§ãã
rcat@rcat-Green-G5:/SSD/testdify/dify$ cd docker
rcat@rcat-Green-G5:/SSD/testdify/dify/docker$ ls
docker-compose.middleware.yaml docker-compose.png nginx
docker-compose.milvus.yaml docker-compose.qdrant.yaml
docker-compose.pgvecto-rs.yaml docker-compose.yaml
rcat@rcat-Green-G5:/SSD/testdify/dify/docker$docker compose upããŒããå€ããã«ã¯?
â»ãã®ã»ã¯ã·ã§ã³ã¯å€ãããŒãžã§ã³ã§ã®ã¿æå¹ã§ã
Ver1ã®å¯Ÿå¿ã«ã€ããŠã¯ã以äžã®èšäºãã確èªãã ããã
Difyã¯WEBã¢ããªãªã®ã§80çªããŒãã§åŸ
ã¡åãããŸãã
ä»ã§äœ¿ãããå Žåã¯ããŒããå€ããŠãããŸãã
Dockerèµ·ååã«å€æŽããŠãã ããã
docker-compose.yamlã®äžã®æåŸã®æ¹ã«"80:80"ãšãã衚èšãããã®ã§ãå·ŠåŽã奜ããªããŒãçªå·ã«å€ããŠãã ããã

䜿ã£ãŠã¿ã
ã¢ã¯ã»ã¹æ¹æ³
Difyã«ã¢ã¯ã»ã¹ããŸãã
ä»åã¯å¥ã®PCãªã®ã§URLã¯æ¬¡ã®ããã«ãªããŸãããããŸã§ç§ã®å Žåãªã®ã§äžäŸã§ãã
"http://192.168.0.4:25021"
DifyãåãPCã§èµ·åããŠããŠããã€ããŒããå€ããŠããªãå Žåã¯äžèšã§è¡ããã¯ãã§ãã
"http://localhost"
ãªã³ã©ã€ã³çã®å Žåã¯ãã¢ã«ãŠã³ããäœæããŠãã°ã€ã³ããã ãã§ã
ååã¯ç®¡çè
ã¢ã«ãŠã³ãã®èšå®ãããã¿ããã§ãã
é©åœã«äœããŸããã

ãã°ã€ã³ã§ããŸããã

Geimiãã»ããã¢ãã
ãã®ã»ã¯ã·ã§ã³ã®äžéšã¯å€ãããŒãžã§ã³ã§ã®ã¿æå¹ã§ãã
ããŒãžã§ã³1.0以éã¯ãã¡ããã確èªãã ããã
APIããŒã®åãæ¹ãªã©ã¯éæGoogleã®æ¹ã§ç¢ºèªããããã«ããŠãã ããã
ãªã³ã©ã€ã³çã§ã¯GPT3.5ãç¡æã§äœ¿ããã¿ããã§ãããããŒã«ã«çã§ã¯éãã¿ãããªã®ã§ãç¡æã§äœ¿ããããªGoogleã®Geminiãã»ããã¢ããããŸãã
èšå®ã®ã¢ãã«ãããã€ããŒããGeminiãã»ããã¢ãã

APIããŒãèãããã®ã§ãäžã®"Get your API Key from Google"ããããŒãäœæããŠãã ããã
APIããŒã®åãæ¹ã¯ãã®äžã«åç»ããããŸãã®ã§åç
§ããŠãã ããã
åºæ¥äžãã£ããããŒãå
¥ããŠä¿åããŸã

2025/3çŸåšã®ã¢ãã«ã®çš®é¡ãšåŒã³åºãäžéã«ã€ããŠã¯ä»¥äžã®ããã«ãªã£ãŠããŸããã
ãã©ãã·ã¥é¢é£ã¯1æ¥1500åãŸã§äœ¿ããŸãããã ãã1åéã«10åãã30åãšããå¶éãããã®ã§åŒã³åºãééã«ã¯æ³šæããŸãããã
ãŸããäžéã¯ã¢ãã«ããšã®è©±ãªã®ã§ã2.0ãã©ãã·ã¥ãš2.0ãã©ãã·ã¥ã©ã€ãã®äž¡æ¹ã䜿ãã°1æ¥3000å䜿ããŸããããããžã§ããïŒæ¬åœã«ãããã§ããïŒããããšãããããŸãã
https://ai.google.dev/gemini-api/docs/rate-limits?hl=ja

APIããŒã®åãæ¹
ãã¡ãã®åç»ãã芧ãã ãã
â»ããã«åé€ããŠããã®ã§åç»å
ã§ã¯APIããŒãé ããŠããŸããã
Geminiã§ãã¹ãããããäœã
æåããäœæãæŒãããšãããããã£ããããããéžã³ãŸã


äœæããããå³äžã®ã¢ãã«éžæã§Geminiãéžã³ãŸã
ãã®æç¹ã§å³åŽã®ãããã°ç»é¢ã§ãã£ãããå¯èœã§ãã

ä¿åãã
å³äžã®"å ¬éãã"ããæŽæ°ããããšä¿åã§ããŸã

APIãšã³ããã€ã³ãã«ã€ããŠ
ãã®ã»ã¯ã·ã§ã³ã¯åŸããã®è¿œèšã§ãã®ã§ååŸã®å 容ãšé£ç¶æ§ããããŸããã
ããŒã«ã«çã®APIãšã³ããã€ã³ãã¯äžèšã§ããã

ãªã³ã©ã€ã³çã¯äžèšã§ãã

æå·åãããŠããhttpsããããã§ãªãhttpãã§å·®ããããŸãã®ã§æ³šæããŠäžããã
ããŒã«ã«ãªã©ã§http:ã宿°ã§äœ¿ã£ãŠãããšãªã³ã©ã€ã³ã§ã¢ã¯ã»ã¹ã§ããŸããã
ã¡ãªã¿ã«ãããŒã¹URLã®éšåã ãã§ããã°httpã§ãhttpsã§ãã¢ã¯ã»ã¹å¯èœã§ãã
>>> import requests
>>> r= requests.get("http://api.dify.ai/v1/")
>>> r.json()
{'welcome': 'Dify OpenAPI', 'api_version': 'v1', 'server_version': '0.14.2'}ããAPIãå®è¡ããããšãããš405ãšã©ãŒãè¿ãããã®ã§ããªã³ã©ã€ã³ãšããŒã«ã«ã§ã¯ãã¡ããšãã®éšåã®äœ¿ãåããããªããšãããŸãããã
ãŸãšããšæ¬¡å
ä»åã¯å°çšAIãç°¡åã«äœããDifyãè§Šã£ãŠã¿ãŸããã
ãããã°ãã£ããããã ãã§çµãããšãäœãªãã ãšæããããããããŸãããããã®èšäºã¯æ¬¡åã«ã€ãªããããã®å°å
¥ã«æžãããã®ã§ãã
ãšããããã§æ¬¡åã¯Pythonã䜿ã£ãŠãã®ãã£ãããããã«ã¢ã¯ã»ã¹ããŠæç« ãèŠçŽãããçãè¡ã£ãŠãããŸãã
æçµçã«ã¯Discordã®AI BOTã«ãªãäºå®ã§ãã(ãšããããã®èšäºæžããŠãæç¹ã§å®ã¯åºæ¥ãŠããããã)
ããã§ã¯ãŸããäŒãããŸããã