AI技術於3D模型領域的應用

Meshy – 線上圖片轉3D模型fbx檔案

網站: https://www.meshy.ai/

Meshy 是您的 3D 生成式 AI 工具箱,用於輕鬆從文本或圖像創建 3D 資產,從而加速您的 3D 工作流程。使用 Meshy,您可以在幾分鐘內創建高品質的紋理和 3D 模型。

Meshy的功能

Meshy是一個創新的 3D 模型生成平台,提供以下強大的功能

文字轉紋理 (Text-to-Texture):

  • 透過簡單的文字描述,快速生成符合要求的紋理。
  • 例如:輸入「磨損的木頭紋理」,Meshy 能夠在短時間內生成逼真的木頭紋理。

圖片轉紋理 (Image-to-Texture):

  • 將概念圖或參考圖片轉換成可套用的 3D 模型紋理。
  • 這對於藝術家和設計師來說,能大幅提升工作效率。

文字轉 3D 模型 (Text-to-3D):

  • 僅需一段文字描述,就能生成完整的 3D 模型。
  • 即使沒有 3D 建模經驗,也能輕鬆創造出想要的模型。

圖片轉 3D 模型 (Image-to-3D):

  • 這對於將 2D 概念快速轉換成 3D 模型非常有用。
  • 從單張圖片中提取 3D 資訊,生成具體的 3D 模型。

探索社區資源

社區資源: https://docs.meshy.ai/web-app-interface#explore-community-resources

嘗試使用圖片產生3D模型

操作網址: https://www.meshy.ai/workspace/image-to-3d

操作非常的簡單,可直接按最右邊的下載來下載fbx檔案

Stable Diffusion常用操作介面

Easy Diffusion

下載位置: https://easydiffusion.github.io/

特色:

  • 簡易操作: 介面直觀,即使是新手也能快速上手。
  • 模型豐富: 支援多種模型,可根據需求選擇。
  • 擴充性強: 可透過外掛擴展功能。

優點:

  • 學習曲線平緩,適合初學者。
  • 功能齊全,能滿足大部分的繪圖需求。

缺點:

相較於其他工具,客製化選項可能較少。

ComfyUI

下載位置: https://github.com/comfyanonymous/ComfyUI

特色:

  • 高度客製化: 提供極高的自由度,可打造專屬的工作流程。
  • 功能強大: 除了繪圖,還能進行影像處理、動畫製作等。
  • 社群活躍: 有龐大的社群提供支援和資源。

優點:

  • 適合有經驗的使用者,可實現複雜的創作。
  • 功能多樣,能滿足專業人士的需求。

缺點:

  • 配置較為複雜。
  • 學習曲線較陡峭,需要花時間熟悉。

Stable Diffusion web UI

下載位置: https://github.com/AUTOMATIC1111/stable-diffusion-webui

特色:

  • 基於瀏覽器: 不需安裝軟體,直接在瀏覽器中使用。
  • 社群豐富: 有大量的模型和腳本可供選擇。
  • 擴充性強: 可透過擴充套件增加功能。

優點:

  • 使用門檻低,適合初學者。
  • 功能豐富,能滿足多種需求。

缺點:

相較於本地端軟體,速度可能較慢。

安裝指南

最終我選擇Stable Diffusion web UI,因為教學文章最多

Dify:開源大語言模型應用開發平台

在人工智能快速發展的今天,大語言模型(LLM)已成為推動創新的核心力量。然而,如何有效地將這些強大的模型轉化為實用的AI應用,仍然是許多開發者和企業面臨的挑戰。這就是Dify發揮作用的地方,它作為一個開源的LLM應用開發平台,為我們提供了一個便捷的解決方案。

Dify:打造AI應用的全能工具箱

Dify不僅僅是一個開發平台,它更像是一個為LLM應用量身打造的全能工具箱。通過Dify,開發者可以輕鬆設計對話式AI、優化提示詞工程、管理知識庫,並實現無縫的API集成。這些功能的組合使得從概念到部署的整個AI應用開發過程變得更加流暢和高效。

對話式AI設計:打造個性化交互體驗

Dify的核心優勢之一是其強大的對話式AI設計功能。通過直觀的界面,開發者可以輕鬆定制AI助手的個性、知識範圍和回應方式。這使得創建符合特定需求的AI應用變得前所未有的簡單,無論是客戶服務機器人還是專業領域的智能顧問。

提示詞工程:釋放LLM的潛力

在LLM應用開發中,提示詞工程扮演著關鍵角色。Dify提供了先進的提示詞管理和優化工具,幫助開發者精確控制AI的輸出。通過細緻調整提示詞,我們可以顯著提升AI應用的性能和準確性,確保它能夠準確理解用戶意圖並提供恰當的回應。

知識庫管理:為AI注入專業知識

Dify的知識庫管理功能允許開發者輕鬆導入和組織大量專業資料。這意味著我們可以為AI應用注入特定領域的知識,使其能夠處理更複雜、更專業的查詢。無論是法律諮詢、醫療診斷還是技術支持,Dify都能幫助我們構建具有深度專業知識的AI系統。

API集成:無縫連接各種服務

為了確保開發的AI應用能夠與現有系統和服務無縫協作,Dify提供了強大的API集成能力。這使得將AI功能嵌入到各種應用程序和平台中變得異常簡單,大大擴展了LLM應用的可能性和實用性。

Dify介面介紹

Dify 的關鍵特性

Dify 內建了建立 LLM 應用所需的關鍵技術棧,包括:

  • 支援數百個模型:提供多樣的模型選擇,滿足不同應用需求。
  • 直覺的 Prompt 編排介面:簡單易用,讓你輕鬆設計和調整提示語。
  • 高品質的 RAG 引擎:確保數據處理的準確性和效率。
  • 穩健的 Agent 框架:靈活配置和管理代理機器人。
  • 靈活的流程編排:支援複雜流程的設計和自動化。

這些特性使得開發者可以節省大量重複造輪子的時間,專注於創新和業務需求。

支持模型類型

在Dify 中,我們依照模型的使用情境將模型分為以下4 類:

  1. 系統推理模型。 在創建的應用中,用的是該類型的模型。智聊、對話名稱產生、下一步問題建議用的也是推理模型。已支援的系統推理模型供應商:OpenAIAzure OpenAI ServiceAnthropic、Hugging Face Hub、Replicate、Xinference、OpenLLM、訊飛星火文心一言通義千問Minimax、ZHIPU(ChatGLM)
  2. Embedding 模型。在資料集中,將分段過的文件做Embedding 用的是該類型的模型。在使用了資料集的應用程式中,將使用者的提問做Embedding 處理也是用的該類型的模型。已支援的Embedding 模型供應商:OpenAI、ZHIPU(ChatGLM)、JinaAI
  3. Rerank 模型 Rerank 模型用於增強檢索能力,改善LLM 的搜尋結果。已支援的Rerank 模型供應商:Cohere、JinaAI
  4. 語音轉文字模型。將對話型應用中,將語音轉文字用的是該類型的模型。已支援的語音轉文字模型供應商:OpenAI

為什麼選擇 Dify?

你可以將 Dify 與 LangChain 這類的開發庫做比較。LangChain 是一個提供鐵鎚和釘子的工具箱,而 Dify 則是一套經過精良工程設計和軟體測試的完整腳手架方案。

以下是選擇 Dify 的幾個主要理由:

  • 開源:由專業全職團隊和社群共同打造,提供靈活和安全的解決方案,同時保持對資料的完全控制。
  • 快速迭代:產品簡單、克制且迭代迅速,滿足用戶需求。
  • 生產級方案:提供接近生產需求的完整方案,節省開發時間和資源。

使用 Dify 的優勢

Dify 讓你基於任何模型自部署類似 Assistants API 和 GPTs 的能力,確保在靈活和安全的基礎上,對資料保持完全控制。這對於那些希望快速開發和部署生成式 AI 應用的團隊和個人來說,是一個理想選擇。

創業者的理想工具

Dify 可以幫助創業者快速將 AI 應用創意變成現實,無論是成功還是失敗,都需要加速推進。在真實世界中,已有數十個團隊透過 Dify 建立 MVP(最小可用產品)獲得投資,或透過 POC(概念驗證)贏得了客戶的訂單。

整合 LLM 至現有業務

Dify 使得將 LLM 增強現有應用變得簡單。透過 Dify 的 RESTful API,可以實現 Prompt 與業務程式碼的解耦。此外,Dify 的管理介面可以追蹤資料、成本和用量,持續改進應用效果,從而提升業務能力。

企業級 LLM 基礎設施

一些銀行和大型網路公司正在將 Dify 部署為企業內的 LLM 網關,加速 GenAI 技術在企業內的推廣,並實現中心化的監管。這使得 Dify 成為企業級應用的理想選擇,提供穩定、安全的 LLM 基礎設施。

探索 LLM 的能力邊界

即使你是技術愛好者,Dify 也能幫助你輕鬆實踐 Prompt 工程和 Agent 技術。在 GPTs 推出以前,已有超過 60,000 名開發者在 Dify 上創建了自己的第一個應用,展示了其在技術探索中的強大潛力。

Dify 開源許可證

Dify 專案在Apache License 2.0 授權下開源,同時包含以下附加條件:

Dify 允許被用於商業化,例如作為其他應用的「後端即服務」使用,或作為應用程式開發平台提供給企業。然而,當滿足以下條件時,必須聯繫生產者以獲得商業許可:

  • 多租戶SaaS 服務:除非獲得Dify 的明確書面授權,否則不得使用Dify.AI 的源碼來運作與Dify.AI 服務版類似的多租戶SaaS 服務。
  • LOGO 及版權資訊:在使用Dify 的過程中,不得移除或修改Dify 控制台內的LOGO 或版權資訊。

更多教學資源

官方的教學文件非常完整

https://docs.dify.ai/v/zh-hans/guides/model-configuration

對於擴充以及API支持非常的完整

https://docs.dify.ai/v/zh-hans/guides/application-publishing/developing-with-apis

RagFlow深度文檔理解的新境界

RAGFlow的核心優勢在於其強大的深度文檔理解能力。通過結合先進的自然語言處理技術和大型語言模型,RAGFlow能夠深入解析各種複雜格式的文檔,包括PDF、Word和PowerPoint等。這種深度理解使得AI系統能夠更準確地回答用戶查詢,大大提升了問答系統的性能。

特性介紹

基於深度文檔理解,我們的系統能夠從各類複雜格式的非結構化資料中提取真知灼見,在無限上下文的場景下快速完成大海撈針測試。通過模板的文字切片技術,不僅智能而且可控可解釋,提供多種範本選擇並可視化調整。系統支援多種文件類型,包括Word、PPT、Excel、TXT、圖片、PDF、影印件等,全面優化的RAG工作流程能夠滿足從個人應用到超大型企業的需求,並提供易用的API,方便整合各類企業系統,最大程度降低幻覺風險,確保答案有理有據。

系統架構

畫面介紹

以下為登入畫面

模型設定介紹

在這邊設定要使用的模型的Token或者連線至本地端的Ollama,在這邊要注意的是,如果你的Ragflow是用docker起的,那麼就一定也要把ollama起在docker裡面,彼此才連線的到,不然就是要透過公開網址

知識庫設定介紹

接著可以來新增知識庫

在設定知識庫的解析方式時,設定正確的選項非常重要,如果你上傳的文件屬於純文字PDF,則要記得把layout recognize關掉

以下為純文字檔案卻打開layout recognize的解析狀況

沒有打開則可以正常解析全部的純文字內容

如果要解析的是圖檔、POWERPOINT這種需要先解析layout的,則應打開layout recognize,以下為需要打開layout recognize的一個範例,這個PDF的檔案皆為圖像,是使用OCR去判斷上面的文字的

聊天功能介紹

這邊有點類似GPT Plus的功能,可以設定很多不同的聊天助理,並且可以附註搜尋到的檔案的文本,也可以針對每一個聊天助理設定要搜尋的知識庫

圖功能介紹

我們可以在這邊客製化聊天的流程,做更進一步的機器人的進階設定,預設有下面這些不同的流程

可設定的元件包括知識檢索、生成回答、人機交互、問題分類、靜態訊息、是否相關、問題最佳化,並且可以直接運行來測試

每一個元件都可以設定使用的模型和相關提示

預設的客服的流程,有點可怕,如果知識庫裡面沒有相關的文件,就會無限迴圈耶:D

文件管理介紹

從這邊可以看到我們上傳的所有文件的檔案夾

RAGFlow: 檢索增強生成的開源引擎

在人工智能和自然語言處理領域,檢索增強生成(RAG)技術正在迅速崛起。RAGFlow作為一個開源的RAG引擎,為開發者和企業提供了一個強大的工具,以提升AI應用的問答能力和資訊檢索精準度。本文將深入探討RAGFlow的核心功能和應用場景,幫助您了解如何利用這一創新技術打造先進的NLP解決方案。

RAGFlow: 深度文檔理解的新境界

RAGFlow的核心優勢在於其強大的深度文檔理解能力。通過結合先進的自然語言處理技術和大型語言模型,RAGFlow能夠深入解析各種複雜文檔,提取關鍵信息,並建立語義連接。這使得AI系統能夠更準確地理解和回答用戶查詢,大大提升了問答系統的性能。

知識庫管理: 智能化的資訊組織

RAGFlow提供了全面的知識庫管理功能,使得組織和更新大量資訊變得簡單高效。通過智能分類和索引技術,RAGFlow能夠自動組織和關聯不同來源的資料,建立一個結構化的知識網絡。這不僅提高了資訊檢索的效率,還為AI應用提供了豐富的背景知識,使其能夠生成更加準確和相關的回答。

大型語言模型集成: 釋放AI的潛力

RAGFlow無縫集成了多種大型語言模型,如GPT系列,使得開發者可以輕鬆利用這些強大的AI模型來增強自己的應用。通過結合RAG技術和大型語言模型,RAGFlow能夠生成更加準確、相關和富有洞察力的回答,大大提升了AI系統的表現。

RAGFlow的應用場景

RAGFlow的靈活性使其適用於多種場景:

  1. 智能客服系統: 利用RAGFlow的深度文檔理解能力,企業可以構建更智能的客服機器人,能夠準確回答複雜的產品和服務相關問題。
  2. 研究輔助工具: 研究人員可以使用RAGFlow快速分析大量學術文獻,提取關鍵信息,並生成研究摘要。
  3. 法律文檔分析: 法律專業人士可以利用RAGFlow深入解析複雜的法律文件,快速找到相關案例和條款。
  4. 個人知識管理: 個人用戶可以使用RAGFlow建立自己的知識庫,實現高效的個人信息管理和學習。

線上測試RAGFlow

RAGFlow是一款基於深度文件理解所建構的開源RAG(Retrieval-Augmented Generation)引擎。 RAGFlow 可以為各種規模的企業及個人提供一套精簡的RAG 工作流程,結合大語言模型(LLM)針對用戶各類不同的複雜格式數據提供可靠的問答以及有理有據的引用。

線上DEMO網址: https://demo.ragflow.io.

安裝方式

如需確認vm.max_map_count的大小:

sysctl vm.max_map_count

如果vm.max_map_count的值小於262144,可以進行重設:

# 設為 262144:
sudo sysctl -w vm.max_map_count=262144

你的改動會在下次系統重新啟動時被重置。如果希望做永久改動,還需要在/etc/sysctl.conf檔案裡把vm.max_map_count的值再相應更新一次:

vm.max_map_count=262144

下載程式

git clone https://github.com/infiniflow/ragflow.git
cd ragflow/docker
chmod +x ./entrypoint.sh

直接啟動會顯示不支持MACOS,且無法設定環境變數include:env_file: ./.env因此對於內容有稍作修改,改成如下

以下為docker-compose-CN.yml

services:
   ragflow:
    depends_on:
      mysql:
        condition: service_healthy
      es01:
        condition: service_healthy
    image: swr.cn-north-4.myhuaweicloud.com/infiniflow/ragflow:${RAGFLOW_VERSION}
    container_name: ragflow-server
    ports:
      - ${SVR_HTTP_PORT}:9380
      - 80:80
      - 443:443
    volumes:
      - ./service_conf.yaml:/ragflow/conf/service_conf.yaml
      - ./ragflow-logs:/ragflow/logs
      - ./nginx/ragflow.conf:/etc/nginx/conf.d/ragflow.conf
      - ./nginx/proxy.conf:/etc/nginx/proxy.conf
      - ./nginx/nginx.conf:/etc/nginx/nginx.conf
    environment:
      - MINIO_CONSOLE_PORT=9001
      - MINIO_PORT=9000
      - MINIO_USER=rag_flow
      - MINIO_PASSWORD=infini_rag_flow
      - REDIS_PORT=6379
      - REDIS_PASSWORD=infini_rag_flow
      - SVR_HTTP_PORT=9380
      - RAGFLOW_VERSION=dev
      - MEM_LIMIT=8073741824
      - KIBANA_PORT=6601
      - ELASTIC_PASSWORD=infini_rag_flow
      - STACK_VERSION=8.11.3
      - ES_PORT=1200
      - MYSQL_PASSWORD=infini_rag_flow
      - MYSQL_PORT=5455
      - TZ='Asia/Shanghai'
      - HF_ENDPOINT=https://hf-mirror.com
    networks:
      - ragflow
    network_mode: host
    restart: always

以下為docker-compose-base.yml

services:
  es01:
    container_name: ragflow-es-01
    image: docker.elastic.co/elasticsearch/elasticsearch:${STACK_VERSION}
    volumes:
      - esdata01:/usr/share/elasticsearch/data
    ports:
      - ${ES_PORT}:9200
    environment:
      - MINIO_CONSOLE_PORT=9001
      - MINIO_PORT=9000
      - MINIO_USER=rag_flow
      - MINIO_PASSWORD=infini_rag_flow
      - REDIS_PORT=6378
      - REDIS_PASSWORD=infini_rag_flow
      - SVR_HTTP_PORT=9380
      - RAGFLOW_VERSION=dev
      - TIMEZONE=Asia/Shanghai
      - MEM_LIMIT=8073741824
      - KIBANA_PORT=6601
      - ELASTIC_PASSWORD=infini_rag_flow
      - STACK_VERSION=8.11.3
      - ES_PORT=1200
      - MYSQL_PASSWORD=infini_rag_flow
      - MYSQL_PORT=5455
      - node.name=es01
      - bootstrap.memory_lock=false
      - discovery.type=single-node
      - xpack.security.enabled=true
      - xpack.security.http.ssl.enabled=false
      - xpack.security.transport.ssl.enabled=false
      - TZ=${TIMEZONE}
    mem_limit: ${MEM_LIMIT}
    ulimits:
      memlock:
        soft: -1
        hard: -1
    healthcheck:
      test: ["CMD-SHELL", "curl http://localhost:9200"]
      interval: 10s
      timeout: 10s
      retries: 120
    networks:
      - ragflow
    network_mode: host
    restart: always

  mysql:
    image: mysql:5.7.18
    container_name: ragflow-mysql
    environment:
      - MINIO_CONSOLE_PORT=9001
      - MINIO_PORT=9000
      - MINIO_USER=rag_flow
      - MINIO_PASSWORD=infini_rag_flow
      - REDIS_PORT=6378
      - REDIS_PASSWORD=infini_rag_flow
      - SVR_HTTP_PORT=9380
      - RAGFLOW_VERSION=dev
      - TIMEZONE=Asia/Shanghai
      - MEM_LIMIT=8073741824
      - KIBANA_PORT=6601
      - ELASTIC_PASSWORD=infini_rag_flow
      - STACK_VERSION=8.11.3
      - ES_PORT=1200
      - MYSQL_PASSWORD=infini_rag_flow
      - MYSQL_PORT=5455
      - MYSQL_ROOT_PASSWORD=${MYSQL_PASSWORD}
      - TZ=${TIMEZONE}
    command:
      --max_connections=1000
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_general_ci
      --default-authentication-plugin=mysql_native_password
      --tls_version="TLSv1.2,TLSv1.3"
      --init-file /data/application/init.sql
    ports:
      - ${MYSQL_PORT}:3306
    volumes:
      - mysql_data:/var/lib/mysql
      - ./init.sql:/data/application/init.sql
    networks:
      - ragflow
    network_mode: host
    healthcheck:
      test: ["CMD", "mysqladmin" ,"ping", "-uroot", "-p${MYSQL_PASSWORD}"]
      interval: 10s
      timeout: 10s
      retries: 3
    restart: always

  minio:
    image: quay.io/minio/minio:RELEASE.2023-12-20T01-00-02Z
    container_name: ragflow-minio
    command: server --console-address ":9001" /data
    ports:
      - ${MINIO_PORT}:9000
      - ${MINIO_CONSOLE_PORT}:9001
    environment:
      - MINIO_CONSOLE_PORT=9001
      - MINIO_PORT=9000
      - MINIO_USER=rag_flow
      - MINIO_PASSWORD=infini_rag_flow
      - REDIS_PORT=6378
      - REDIS_PASSWORD=infini_rag_flow
      - SVR_HTTP_PORT=9380
      - RAGFLOW_VERSION=dev
      - TIMEZONE=Asia/Shanghai
      - MEM_LIMIT=8073741824
      - KIBANA_PORT=6601
      - ELASTIC_PASSWORD=infini_rag_flow
      - STACK_VERSION=8.11.3
      - ES_PORT=1200
      - MYSQL_PASSWORD=infini_rag_flow
      - MYSQL_PORT=5455
      - MINIO_ROOT_USER=${MINIO_USER}
      - MINIO_ROOT_PASSWORD=${MINIO_PASSWORD}
      - TZ=${TIMEZONE}
    volumes:
      - minio_data:/data
    networks:
      - ragflow
    network_mode: host
    restart: always

  redis:
    image: redis:7.2.4
    container_name: ragflow-redis
    command: redis-server --requirepass ${REDIS_PASSWORD} --maxmemory 128mb --maxmemory-policy allkeys-lru
    ports:
      - 6379:6379
    volumes:
      - redis_data:/data
    networks:
      - ragflow
    network_mode: host
    restart: always

volumes:
  esdata01:
    driver: local
  mysql_data:
    driver: local
  minio_data:
    driver: local
  redis_data:
    driver: local

networks:
  ragflow:
    driver: bridge

同時啟動兩個docker-compose

docker-compose -f docker-compose-base.yml -f docker-compose-CN.yml up -d

可看到啟動成功

接著打開127.0.0.1就可以創建帳號並登入了

開源RAG網頁套件研究

open-webui

Github位置: https://github.com/open-webui/open-webui

工具介紹

Open WebUI 是一種可擴展、功能豐富且使用者友好的自託管 WebUI,旨在完全離線運行。它支援各種LLM運行器,包括 Ollama 和 OpenAI 相容的 API。有關更多資訊,請查看: https://docs.openwebui.com/

主要功能

  • Ollama/OpenAI API 集成:毫不費力地集成與 OpenAI 相容的 API,以實現與 Ollama 模型一起進行的多功能對話。自定義 OpenAI API URL 以連結到 LMStudio、GroqCloud、Mistral、OpenRouter 等。
  • Pipelines、Open WebUI 外掛程式支援:使用 Pipelines 外掛程式框架將自定義邏輯和 Python 庫無縫集成到 Open WebUI 中。啟動您的 Pipelines 實例,將 OpenAI URL 設置為 Pipelines URL,並探索無限的可能性。示例包括函數調用、用於控制訪問的用戶速率限制、使用 Langfuse 等工具進行使用監控、使用 LibreTranslate 進行即時翻譯以實現多語言支援、有毒消息過濾等等。
  • 網頁,支持PWA、回應式設計:在台式電腦、筆記型電腦和行動裝置上享受無縫體驗。
  • 免提語音/視頻通話:通過集成的免提語音和視頻通話功能體驗無縫通信,從而實現更加動態和互動的聊天環境。
  • 模型生成器:通過 Web UI 輕鬆創建 Ollama 模型。通過 Open WebUI 社區集成,輕鬆創建和添加自定義角色/代理、自定義聊天元素和導入模型。
  • 本機 Python 函數調用工具:通過工具工作區中的內置代碼編輯器支援來增強您的LLMs功能。只需添加純 Python 函數,即可自帶函數 (BYOF),從而實現與LLMs的無縫集成。
  • 本地RAG整合:通過突破性的檢索增強生成 (RAG) 支援,深入瞭解聊天交互的未來。此功能將文檔交互無縫集成到您的聊天體驗中。您可以將文件直接載入到聊天中或將檔案添加到文件庫中,在查詢之前使用 # 命令輕鬆訪問它們。
  • RAG 的 Web 搜尋:使用 SearXNG 、 Google PSE 、 Brave Search 、 serpstack、serper、Serply、DuckDuckGo 和 TavilySearch 等提供程式執行 Web 搜尋,並將結果直接注入到您的聊天體驗中。
  • Web 瀏覽功能:使用後跟URL的命令將網站無縫集成到您的聊天體驗中。此功能允許您將 Web 內容直接合併到您的對話中,從而增強交互的豐富性和深度。
  • 圖像生成集成:使用 AUTOMATIC1111 API 或 ComfyUI(本地)和 OpenAI 的 DALL-E(外部)等選項無縫整合圖像生成功能,通過動態視覺內容豐富您的聊天體驗。
  • 多種模型對話:毫不費力地同時與各種模型互動,利用它們的獨特優勢獲得最佳回應。通過並行利用一組不同的模型來增強您的體驗。
  • 基於角色的訪問控制 (RBAC):確保具有受限許可權的安全訪問;只有經過授權的個人才能訪問您的Ollama,並且為管理員保留了獨佔的模型創建/拉取許可權。

Hollama

Github位置: https://github.com/fmaclen/hollama

線上DEMO: https://hollama.fernando.is

用於與 Ollama 伺服器通訊的最小 Web UI。

主要功能

  • 具有代碼編輯器功能的大型prompt輸入框
  • Markdown 解析,帶語法高亮顯示
  • 輕鬆將 Markdown 複製為原始文字
  • 可自定義的系統提示
  • 保存瀏覽器上 localStorage 的所有更改
  • 桌面和移動友好的佈局
  • 淺色和深色主題
  • 支持重新產出答案以及流式輸出

LoLLMs Webui

LoLLMs Webui是一個基於Web的用戶介面,用來運行和管理大型語言模型(Large Language Models,簡稱LLMs)。它提供了一個友好的界面,讓使用者能夠輕鬆地與各種大型語言模型互動,進行文本生成、對話、翻譯等操作。這個Webui通常用於研究和開發人員,需要處理自然語言處理任務的專業人員,或任何對語言模型有興趣的人。

lollms v6 支持文本生成,例如自動寫詩,並允許用戶在「遊樂場」應用中測試不同的文本完成任務。此外,用戶可以進行討論和創建自定義預設以應對特定任務。

主要功能

  1. 模型選擇:允許使用者選擇和切換不同的語言模型。
  2. 文本生成:根據用戶輸入的提示生成文本。
  3. 對話系統:進行類似於聊天機器人的對話。
  4. 多語言支持:支持多種語言的文本生成和翻譯。
  5. 性能監控:提供模型運行的性能數據和使用統計。
  6. 擴展和自定義:允許用戶添加自定義模型和擴展功能。

BionicGPT

Github頁面: https://github.com/bionic-gpt/bionic-gpt

BionicGPT 是 ChatGPT 的本地替代品,提供生成式 AI 的優勢,同時保持嚴格的數據機密性 BionicGPT 可以在您的筆記型電腦上運行或擴展到數據中心。

主要功能

  • 在幾秒鐘內本地運行 Gen AI:嘗試我們的 Docker Compose 安裝,適合本地運行 AI 和小型試點項目。
  • 熟悉的聊天體驗:我們的聊天介面借鑒了 ChatGPT,確保使用者友好的體驗。仿生主題完全可定製,提供快速回應的性能,並支援聊天記錄管理。
  • AI 助手(檢索增強產生):用戶可以創建使用自己的數據來增強 AI 的助手,並在團隊中無縫共享。助手是企業級 RAG 管道,支援多種格式文件,並可通過 UI 進行無代碼配置。
  • 團隊功能:Bionic 利用團隊設置最大化效果,支持邀請和管理團隊成員。用戶可以在團隊之間切換,保持數據隔離,並使用 SSO 系統配置訪問權限。
  • 縱深防禦安全:我們的 CI/CD 管道運行 SAST 測試,並在 Postgres 中使用行級別安全性。內容安全策略處於最高級別,容器構建和運行具備安全保障,並支持 SIEM 集成和機密管理。
  • 可觀察性和報告:與 Prometheus 相容的可觀測性 API,使用 Grafana 創建儀錶板,所有問題和回復都記錄在 Postgres 資料庫中。
  • 令牌使用限制和控制:設置令牌使用限制,保護模型不過載,通過反向代理和角色基於限制確保公平使用。
  • 將 AI 助手轉變為 API:任何助手都可以轉換為相容 Open AI 的 API,並支持 API 金鑰管理和限制。
  • 使用 GuardRails 管理數據治理:將規則應用於批量和流式數據管道,抵禦立即注射攻擊等多種威脅。
  • 本地或遠端大型語言模型:支援在本地或數據中心運行的開源模型,支持多模型管理和無縫切換。
  • 基於角色的訪問控制:根據 IAM 系統中的角色授予或限制功能訪問權限,確保數據安全。
  • 數據集成:通過 Airbyte 集成,批量上傳數據,並支援手動上傳和即時數據捕獲,確保數據不洩露。
  • 部署到裸機或雲端:使用 Kubernetes 無縫安裝,定期更新和引入新功能以改進 Bionic。

LibreChat

LibreChat 將助理 AI 的未來與 OpenAI 的 ChatGPT 的革命性技術相結合。相容遠端和本地 AI 服務:groq, Ollama, Cohere, Mistral AI, Apple MLX, koboldcpp, OpenRouter, together.ai, Perplexity, ShuttleAI, and more

RAG API: github.com/danny-avila/rag_api

主要功能

  1. 語音轉文字和文字轉語音功能:用戶可以透過語音與系統互動,系統能夠識別語音並回應,也能將文字信息轉換為語音輸出。
  2. 共享連結功能:允許用戶創建訊息的共享連結,並將共享訊息在創建時固定,確保即使後來有新訊息添加,共享的內容也不會變更。更新共享訊息只需重新生成連結。
  3. 電子郵件驗證和密碼重設:增加註冊和登入的安全性,用戶可以通過驗證電子郵件地址來保護帳戶安全,並支持通過電子郵件重設密碼。
  4. 搜索功能增強:改進了搜索功能,使用戶更容易在聊天記錄中找到特定的信息。
  5. 初步支持 OpenAI 助理 V2:包括支持 GPT-4.0,原生圖像視覺支持,以及由 LibreChat 支持的圖像和代碼解釋功能。
  6. 增強的隱私保護:用戶可以設定只顯示自己創建或沒有作者的助理,這在使用共享 API 密鑰的環境中尤為重要,以防止用戶間的信息洩露。
  7. LDAP 支持:支持輕量級目錄訪問協議(LDAP)服務器認證,方便組織管理對 LibreChat 的訪問。
  8. 可以從 LibreChat、ChatGPT、Chatbot UI 導入對話

LLMStack

LLMStack 是一個強大的生成式 AI 平台,旨在簡化 AI 應用的構建和部署。無需編寫任何代碼,您就可以構建多種 AI 代理,並將它們連接到您的內部或外部工具,進行網頁搜索或互聯網瀏覽。這是一個專為現代業務需求設計的全面解決方案。

主要功能

  • 代理:構建生成式 AI 代理,如 AI SDR、研究分析師、RPA 自動化等,無需編寫任何代碼。將代理連接到您的內部或外部工具,搜索 Web 或與代理一起瀏覽互聯網。
  • 連結多個模型:LLMStack 允許您將多個 LLMs 模型連結在一起,以構建複雜的生成式 AI 應用程式。
  • 對您的數據使用生成式 AI:將您的數據導入帳戶,並在 AI 鏈中使用它。LLMStack 支援從各種來源(如 gdrive、notion、網站、直接上傳等)導入多種類型的數據(如 CSV、TXT、PDF、DOCX、PPTX 等)。平台將自動進行預處理和向量化,並將數據存儲在開箱即用的向量資料庫中。
  • 無代碼構建器:LLMStack 帶有一個無代碼構建器,允許您在沒有任何編碼經驗的情況下構建 AI 鏈。您可以將多個 LLMs 連結在一起,並將它們連接到您的數據和業務流程。
  • 部署到雲端或本地:LLMStack 可以部署到雲端或本地。您可以將其部署到您自己的基礎架構中,或使用我們的雲產品,網址為 Promptly。
  • API 訪問:使用 LLMStack 構建的應用程式或聊天機器人可以通過 HTTP API 訪問。您還可以從 Slack 或 Discord 觸發您的 AI 鏈。
  • 多租戶:LLMStack 是多租戶的。您可以建立多個組織並向其中添加使用者。使用者只能訪問屬於其組織的數據和 AI 鏈。

AIGC 文字/圖片生成

分享內容

1. ChatGPT_Bing_Bard_Claude指南

投影片: https://www.slideshare.net/……/1chatgptbi……/265753441

課程錄影: https://www.youtube.com/watch?v=AjNXpRn3G0s

2. 透過模板指令掌握使用技巧

投影片: https://www.slideshare.net/slideshows/2pdf-116d/265753345

課程錄影: https://www.youtube.com/watch?v=k33MNZA44Tw

3. 圖像生成及應用

投影片: https://www.slideshare.net/ssuser834f031/3pdf

課程錄影: https://www.youtube.com/watch?v=tcrJpJgavMA

4. AIGC的延伸應用介紹

投影片: https://www.slideshare.net/slideshows/4aigcpdf/265924625

課程錄影: https://www.youtube.com/watch?v=2wQ6JTFu0Fs

ChatGPT / Bing / Bard / Claude指南

一、介紹人工智慧

這邊主要是在說明人工智慧演進的過程,其實人工智慧的概念第一時間是在1950年時,由圖靈所提出,定義為一個人透過鍵盤和另一個對象溝通,如果施測者無法分辨與之對話的對象是人還是機器的話, 這個機器就被認為擁有「智慧

但這個時候人工智慧的實作方式還比較以符號邏輯(類似統計學這樣以符號代表抽象的概念)為主,但很難清楚的釐清人類的思考邏輯。後來專家系統時代,人類會嘗試針對每個領域的知識去化作一條條的規則

但是,人類所能表達的,遠比人類所知道的少(博藍尼悖論),因此我們很難很完整的把我們所知道的化作規則或思考邏輯來打造人工智慧。

從2010年至今,我們進入的資料至上的時代,也就是我們開始直接丟資料給電腦,由電腦去歸納、找出電腦自己看得懂的規則,這也是為什麼ChatGPT等生成式AI的結果帶有部分的不可控、不可預測性。

了解AI的演進過程可以讓我們了解當我們要選擇AI技術時,可能可使用的選擇。雖然2010年後的機器學習技術能夠做到最廣泛的通用人工智能,但是若我們的需求範圍較為侷限,或者需要非常高的可解釋性、準確性時,仍然可以考慮符號邏輯或專家系統的方式來實做。

這些演進的歷程都是現在生成式AI能夠出現的重要基礎,每一代之間的關係不是淘汰,而是一層層的進化。

二、基礎模型帶來AI再一次的革命

在這邊我強調了在ChatGPT出現之前的AI應用,大多都用在中、大型企業內部或智能相關產品的應用。但是ChatGPT出現之後,AI從產業研發進入全民有感,並且掀起了非常大的AI風潮。

這是因為基礎模型的出現,所謂基礎模型就是類似ChatGPT這樣用途可以非常廣泛,並且可以透過詞嵌入的方式,以非常快速簡單的prompt方式,打造不同的產品。

例如下圖中的GitHub Copilot、智慧錄音卡、Notion AI、AI心理諮商,其實都是使用ChatGPT的模型,卻可以使用在多種非常不同的應用場景上(心理安慰、生活便利、程式開發等不同用途)

這樣的一個基礎模型的出現,帶來開發AI應用的革命性變革,過去,有些AI應用程式可能需要我花上六個月、甚至一年的時間來建立,現在許多團隊可能一週就能完成

以ChatGPT的自製一個聊天機器人為例,現在只需要上傳一些機器人需要知道的文件資料、並且使用對話的方式指導機器人該如何正確回應,就可以擁有一個專屬的客製對話機器人

三、生成式AI相關的應用

有興趣的可以自行去研究、了解現在AI可以做到那些事情

文本生成(LLM)

圖像生成 (text-to-image)

音樂 / 聲音生成

程式碼生成

四、多模態應用

基礎模型另一個強大之處,在於可以結合視覺、聽覺、文字的輸入,以及對不同型態輸入資料的交叉理解,能夠讓AI朝【通用型人工智慧】更加靠近

五、善用AI為生產力的新動能

特點/模型Bard(Google)ChatGPT (OpenAI)ChatGPT Plus (OpenAI)Bing (Microsoft)Claude (Anthropic)
上下文窗口長度(Token)32K4K8K8K100K
推理能力不錯最佳最佳不明不錯
網路連接功能原生支持網路搜尋無法讀取網頁需連至Bing取得網頁內容所有用戶可用的連接功能無法讀取網頁
多模態能力支持文字、圖像、語音輸入支持圖像、語音及文字輸入,以及圖像、文字、檔案輸出支持文字輸入,圖像、文字輸出支持PDF等檔案的文字讀取
建議用途圖像辨識初次接觸者皆可資訊搜尋長文PDF摘要
費用免費免費每月$20美金免費免費
主要用途研究、資料分析、聊天程式碼開發、聊天多模態及與其他服務的串接應用網路搜尋、聊天研究、分析

AI成為生產力的新動能,用戶在人工智慧輔助下完成工作的效率要高得多

免程式碼將ChatGPT串接到LINE對話

使用工具 – FancyAI

FancyAI網址: https://www.fancyai.co/

可輕鬆使用GPT大語言模型知識庫,介面化匯入文件(PDF, CSV, TXT)或網址,讓FANCY AI迅速掌握您的知識進行問答。只需30秒,即可與LINE官方帳號整合,建立分享知識Bot連結。更有視覺化的工作流程編排和對話紀錄功能!

AI大模型問答介面,可設定你專屬AI回答流程

FANCY AI 能力

  • AI ChatGPT知識客服: 結合你自己專屬知識,ChatGPT 24/7 的為您的用戶服務
  • 超快速精準匯入處理:自動分段,輸入,拆成問答,多種方式讓您處理的數據 (支持PDF,CSV,TXT,網址)
  • 簡單直覺操作AI大模型問答介面:讓你設定你專屬AI回答流程,可以自訂預設開場白,選擇性問題,個性化你的AI
  • 30秒串接好LINE官方帳號,分享連結:結合你的知識庫,LINE官方帳號直接用ChatGPT不間斷服務。

步驟一、創建OpenAI開發者使用的密鑰

首先要去你的OpenAI開發者平台,創建你的API Keys: https://platform.openai.com/api-keys。這樣其他應用程式才可以呼叫你的OpenAI帳號下的API(然後扣你的錢)

接著就是要付款給OpenAI,點此付款: https://platform.openai.com/account/billing/overview。單次可購買$5~$95美金(也就是最低約150左右)

OpenAI的API使用需要付費,價格資訊如下: https://openai.com/pricing

由上圖可知道,OpenAI的API計費單位為Token,下面會解釋甚麼叫做Token,也可以線上去測試某段文字的Token數量是多少,可以更精準地了解可能的花費。

可選擇模型的比較

甚麼是Token

在 API 處理提示之前,輸入會被分解為Tokens 。這些Tokens並未準確地在單字開始或結束的位置進行切割 – Tokens可以包含尾隨空格甚至子單字。

以下是一些幫助理解Token長度的有用經驗規則:

  • 1 個標記 ~= 4 個英文字符
  • 1 個令牌 ~= 3/4 個單字
  • 100 個標記 ~= 75 個單字
  • 1-2 句 ~= 30 個標記
  • 1 段 ~= 100 個標記
  • 1,500 個單字 ~= 2048 個標記

Token切割測試工具: https://platform.openai.com/tokenizer

步驟二、創建Line Bot帳號並為串接做準備

首先要申請一個Line API串接的開發者帳號: https://developers.line.biz/console/

創建帳號流程如下:

設定你的LINE BOT帳號為使用Webhook

接著這邊是在分享時未設定的部分,就是把預設的固定回復關掉,開啟 LINE Official Account Manager

打開Webhook並且關閉自動回應訊息,這樣所收到的訊息才會傳到我們的API裡面

步驟三、創建FancyAI帳號

創建帳號之後,首先要把帳號和你的OpenAI綁定,點OpenAI帳號後,把剛剛第一步驟創建的Key貼進去,這樣FancyAI才能夠呼叫你的OpenAI API

Fancy AI: https://www.fancyai.co/

新建一個應用,選擇簡單對話

設定與Line的串接 – 設定API秘鑰

Line Channel Access Token: 瀏覽剛剛創建的Line帳號的頁面MessageAPI -> Channel access token -> Issue將出現的字串複製進去

Line Channel Secret位於Basic settings下方

接著告訴Line要API的webhook位置: 選擇”應用>你的應用名字>Line API”

把這邊的webhook網址貼到剛剛LINE Developer的webhook設定位置

接著就可以測試你的機器人囉!!

讓你的ChatGPT更強大 – Zapier AI Actions

Zapier是甚麼

Zapier 是一個無需編寫代碼的自動化工具,用於連接和自動化不同應用程序。它允許你創建自動化工作流程(Zaps),觸發事件(如新郵件)將啟動操作(如將附件上傳到雲端硬盤),提高生產力並節省時間。 Zapier 支持數千種應用程序,包括常見的工作工具、社交媒體和電子郵件服務。

在ChatGPT Plus使用API連接Zapier可以做到甚麼

與其他應用程式連動 – 通訊錄

與其他應用程式連動 – 日曆

與其他應用程式連動 – Gmail

如何建立連動

首先,你一定要付費成為ChatGPT Plus會員,這樣才會能夠在你的ChatGPT裡面串接外部API

接著,建立一個你自己專屬的My GPTs,選擇Create a GPT

接著,這邊有詳細的設定教學(https://actions.zapier.com/docs/platform/gpt)

首先,複製這串網址

https://actions.zapier.com/gpt/api/v1/dynamic/openapi.json?tools=meta

選擇最下面的Create new action,接著選擇Import from URL,把剛剛的網址貼上去

設定Zapier方的權限

這邊的設定就和ChatGPT本身無關,而是Zapier這邊的權限控管,如果ChatGPT的這個對話功能不會只有自己使用的話,也要教所有使用者如何允許ChatGPT去存取他的Zapier帳號

提供配置 URL

我們為您提供了一個支援自然語言參數的網址,供您在 GPT 中使用,您可以在其中指定操作名稱,也可以選擇包含特定欄位值詳細資訊。使用 https://actions.zapier.com/gpt/start 作為基礎。

它支援兩個可選的查詢參數:

  • setup_action 與操作名稱
  • setup_params 用於欄位指令(提供某些欄位值,例如進行 AI 猜測,或說不包含某些欄位)

例如,下面的連結將為 Google 日曆尋找電子郵件設定新操作,並將開始時間和結束時間欄位設為讓 AI 猜測.立即嘗試此處或造訪此網址:

https://actions.zapier.com/gpt/start?setup_action=google calendar find event&setup_params=set have AI guess for Start and End time

把下面的文字加入ChatGPT的Instructions欄位裡面,教導GPT如何引導使用者去開啟Zapier權限

###Rules:
- 在操作之前,我需要確認您是否已登入並設定了 Zapier 的 AI Actions。這是進行下一步所必需的。
- 假入已經登入的話,開始下面的步驟

###Instructions for Zapier Custom Action:
Step 1. 我將首先檢查您是否擁有完成此請求所需的 Zapier AI Actions。我會呼叫 /list_available_actions/ 來列出可用的操作。 假如REQUIRED_ACTION可以在AVAILABLE ACTIONS之中找到的話,則到Step 4,否則則到Step 2。

Step 2. 如果所需的操作不可用,我將向您發送所需操作的配置連結。您需要根據該連結配置 Zapier AI Action,並在完成後通知我。

Step 3. 一旦您確認已配置所需的操作,我將繼續處理您的原始請求。

Step 4. 使用在/list_available_actions/ 的JSON 回應中傳回的id 欄位(在results 陣列中),我將填寫運行操作所需的字串。我將根據您的請求填寫指令和任何其他必要的欄位。 

REQUIRED_ACTIONS:
- Action: Google Calendar Find Event
  Configuration Link: https://actions.zapier.com/gpt/start?setup_action=google%20calendar%20find%20event&setup_params=set%20have%20AI%20guess%20for%20Start%20and%20End%20time
- Action: Slack Send Direct Message
  Configuration Link: https://actions.zapier.com/gpt/start?setup_action=Slack%20Send%20Direct%20Message

日曆功能的GPT 演示

實驗心得

這個Action應該非常花費額度, 因為我的Plus沒呼叫幾個Action就會額度用完了,而且在呼叫Action的時候,或許是驗證問題,或許是額度不足失敗問題,會導致很多機會沒辦法照著我們的想法去走。

但是在ChatGPT內可以串接自己的API連接到自己的網站功能裡,真的非常強大,很期待日後系統越來越穩定,功能越來越健全後此功能的可能未來性

參考資料

Create custom versions of ChatGPT with GPTs and Zapier

AI Actions