国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

使用nextjs本地化部署AI大模型gemma

這篇具有很好參考價值的文章主要介紹了使用nextjs本地化部署AI大模型gemma。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

筆記本也能部署本地AI模型進行聊天啦!

博主是AI新手,如有不對還請評論區(qū)指教~

這里介紹mac的部署方式,win也可以實現。

本案例使用到:ollama + nextjs + langchain.js + milvus 來實現知識庫問答和聊天。

ollama:本地運行模型服務

nextjs:前端框架項目

langchain.js:調用模型服務并對話

milvus:向量數據庫

開源代碼:GitHub - huangj17/gemma-nextjs: 使用nextjs本地化部署AI大模型gemma

1、下載 ollama?在本地運行

  1. 安裝教程:22K star的超強工具:Ollama,一條命令在本地跑 Llama2 - 知乎
  2. 官方文檔:gemma?安裝后使用?ollama run gemma:2b 命令把gemma:2b模型拉取到本地運行

2、創(chuàng)建一個nextjs項目

  1. 安裝教程:Getting Started: Installation | Next.js?(前端小伙伴就很清楚啦~)
  2. 創(chuàng)建后安裝langchainjs依賴包,yarn add?langchain?@langchain/community??Installation | ????? Langchain
  3. 安裝完成yarn dev跑起來
  4. 創(chuàng)建一個ollama實例:
    import { ChatOllama } from "@langchain/community/chat_models/ollama";
    
    const chatModel = new ChatOllama({
      baseUrl: "http://localhost:11434", // Default value
      model: "gemma:2b",
    });
  5. 發(fā)起對話:
    await chatModel.invoke("what is LangSmith?");
  6. 你就會得到一個結果:使用nextjs本地化部署AI大模型gemma,人工智能,langchain,reactjs,llama,milvus,ai

3、安裝Milvus向量數據庫

  1. 安裝教程:Install Milvus Standalone with Docker Milvus documentation?從官網下載安裝。
  2. 安裝完成后可以使用官方桌面化工具 Attu 來進行連接查看向量數據。
  3. 輸入默認Milvus服務地址進行連接使用nextjs本地化部署AI大模型gemma,人工智能,langchain,reactjs,llama,milvus,ai
  4. 連接后可以查看集合也可以進行向量查詢使用nextjs本地化部署AI大模型gemma,人工智能,langchain,reactjs,llama,milvus,ai

4、使用langchainjs連接向量庫

  1. cd到next項目安裝milvus依賴包(注意milvus包僅限node環(huán)境運行)
    yarn add @zilliz/milvus2-sdk-node
  2. 在next項目中 src/pages/api 新建milvus.ts文件
    import { OllamaEmbeddings } from "@langchain/community/embeddings/ollama";
    import { Milvus } from "@langchain/community/vectorstores/milvus";
    import type { NextApiRequest, NextApiResponse } from "next";
    
    type ResponseData = {
      result: any;
    };
    
    export default async function handler(
      req: NextApiRequest,
      res: NextApiResponse<ResponseData>
    ) {
      const embeddings = new OllamaEmbeddings({
        model: "gemma:2b",
        baseUrl: "http://localhost:11434",
      });
      const vectorStore = await Milvus.fromTexts(
        [
          "Tortoise: Labyrinth? Labyrinth? Could it Are we in the notorious Little\
                    Harmonic Labyrinth of the dreaded Majotaur?",
          "Achilles: Yiikes! What is that?",
          "Tortoise: They say-although I person never believed it myself-that an I\
                    Majotaur has created a tiny labyrinth sits in a pit in the middle of\
                    it, waiting innocent victims to get lost in its fears complexity.\
                    Then, when they wander and dazed into the center, he laughs and\
                    laughs at them-so hard, that he laughs them to death!",
          "Achilles: Oh, no!",
          "Tortoise: But it's only a myth. Courage, Achilles.",
        ],
        [{ id: 2 }, { id: 1 }, { id: 3 }, { id: 4 }, { id: 5 }],
        embeddings,
        {
          collectionName: "goldel_escher_bach",
          clientConfig: {
            address: "localhost:19530",
            token: "root:Milvus",
            ssl: false,
          },
        }
      );
    
      const response = await vectorStore.similaritySearch("scared", 2);
    
      res.status(200).json({ result: response });
    }
    

    注意:OllamaEmbeddings第一個參數填寫本地運行的ollama環(huán)境配置。clientConfig為milvus配置文章來源地址http://www.zghlxwxcb.cn/news/detail-850263.html

  3. 返回前端頁面index.tsx中使用axios或者fetch調用上面的接口 /api/milvus GET 就能看到返回的查詢向量結果了

5、用向量結果配合ollama運行的gemma模型進行提問

  1. 回到前端頁面,創(chuàng)建ollama聊天模型,創(chuàng)建提示詞結合上下文來進行對話
    const chatModel = new ChatOllama({
      baseUrl: "http://localhost:11434",
      model: "gemma:2b",
    });
    const prompt = ChatPromptTemplate.fromMessages([
      ["user", "{input}"],
      [
        "system",
        `您是一位經驗豐富的文檔編寫專家。使用所提供的上下文:\n\n{context},盡最大努力回答用戶的問題。生成給定問題的簡明答案。不要發(fā)重復文字!`,
      ],
    ]);
    
    const documentChain = await createStuffDocumentsChain({
      llm: chatModel,
      prompt: prompt,
    });
    const invoke = await documentChain.invoke({
      input: 'Who is Tortoise talking to?',
      context: result.map((item: any) => new Document({ ...item })), // result接口返回的向量結果
    });
  2. 搞定!打印invoke就可以看到最終結果啦!

到了這里,關于使用nextjs本地化部署AI大模型gemma的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 實戰(zhàn)whisper:本地化部署通用語音識別模型

    實戰(zhàn)whisper:本地化部署通用語音識別模型

    ????????Whisper 是一種通用語音識別模型。它是在大量不同音頻數據集上進行訓練的,也是一個多任務模型,可以執(zhí)行多語言語音識別、語音翻譯和語言識別。 ? ? ? ? 這里呢,我將給出我的一些代碼,來幫助你盡快實現【語音轉文字】的服務部署。 ? ? ? ? 以下是該A

    2024年01月18日
    瀏覽(29)
  • 【AI工具】-Stable Diffusion本地化部署教程

    【AI工具】-Stable Diffusion本地化部署教程

    今天我們要介紹的是時下最流行的AI繪圖軟件Stable Diffusion,雖然Diffusion.ai已經開放api,但是長時間的商業(yè)化調用我們需要購買很多的金幣。所以我們需要找一個平替的AI繪圖平臺,現在主流市場中AI繪圖軟件主要就是OpenAI的DALLE、midjourney以及今天要學習的Stable Diffusion,而前兩

    2024年02月13日
    瀏覽(29)
  • Window本地化部署stable diffusion AI繪圖

    Window本地化部署stable diffusion AI繪圖

    從零開始,手把手教你Window本地化部署stable diffusion AI繪圖 - 知乎 (zhihu.com) 解決MAC筆記本Stable Diffusion安裝時報No matching distribution found for tb-nightly的問題 - 阿貍哥哥 - 博客園 (cnblogs.com) ?修改啟動腳本啟動命令里加入了 --precision full --no-half?precision full就是全精度,no half是不使用

    2024年02月11日
    瀏覽(36)
  • Window本地化部署stable diffusion AI繪圖+問題匯總

    Window本地化部署stable diffusion AI繪圖+問題匯總

    1. 為什么要本地部署 本地部署沒有生成數量的限制,不用花錢,生成時間快,不用排隊,自由度高很多,可以調試和個性化的地方也更多。 部署過程可以熟悉環(huán)境配置的流程,熟悉工程化部署步驟。對于PM來說也是一種技術成長。 部署過程遇到各種問題,在嘗試解決的過程

    2024年02月09日
    瀏覽(34)
  • 不需要GPU就可以玩轉模型,同時支持本地化部署

    不需要GPU就可以玩轉模型,同時支持本地化部署

    ????????簡單一款不需要GPU就可以在Win 機器跑的模型:Ollama;用于本地運行和部署大型語言模型(LLMs)的開源工具 關于Ollama的簡要介紹 平臺兼容性 :Ollama支持多種操作系統(tǒng),包括macOS、Linux和Windows,這使得它在不同用戶之間具有較好的可訪問性。 模型支持 :它能夠支持

    2024年04月16日
    瀏覽(40)
  • GPT大語言模型Alpaca-lora本地化部署實踐【大語言模型實踐一】

    Alpaca模型是斯坦福大學研發(fā)的LLM(Large Language Model,大語言)開源模型,是一個在52K指令上從LLaMA 7B(Meta公司開源的7B)模型微調而來,具有 70億 的模型參數(模型參數越大,模型的推理能力越強,當然隨之訓練模型的成本也就越高)。 LoRA,英文全稱Low-Rank Adaptation of Large

    2024年02月05日
    瀏覽(25)
  • 本地化部署離線開源免費語音識別API,支持多模態(tài)AI能力引擎

    本地化部署離線開源免費語音識別API,支持多模態(tài)AI能力引擎

    思通數科作為一家專注于多模態(tài)AI能力開源引擎平臺,其技術產品涵蓋了自然語言處理、情感分析、實體識別、圖像識別與分類、OCR識別以及語音識別等多個領域。在語音識別這一細分市場,思通數科的技術產品中的音頻文件轉寫服務有著相似的應用場景和功能特點。 思通數

    2024年04月12日
    瀏覽(33)
  • 基于GitHub代碼庫訓練模型本地化AI代碼自動補全 - Tabby Windows10

    基于GitHub代碼庫訓練模型本地化AI代碼自動補全 - Tabby Windows10

    參考: https://github.com/TabbyML/tabby 已經有好幾款類似強勁的代碼補全工具,如GitHub Copilot,Codeium等,為什么還要選擇Tabby? Tabby除了和其他工具一樣支持聯網直接使用之外, 還支持本地化部署 。 即對內部代碼安全性要求很高時,可以采取Tabby項目模型的本地化部署,不用擔心本

    2024年02月02日
    瀏覽(84)
  • GPT大語言模型Alpaca-lora本地化部署實踐【大語言模型實踐一】 | 京東云技術團隊

    GPT大語言模型Alpaca-lora本地化部署實踐【大語言模型實踐一】 | 京東云技術團隊

    Alpaca模型是斯坦福大學研發(fā)的LLM(Large Language Model,大語言)開源模型,是一個在52K指令上從LLaMA 7B(Meta公司開源的7B)模型微調而來,具有 70億 的模型參數(模型參數越大,模型的推理能力越強,當然隨之訓練模型的成本也就越高)。 LoRA,英文全稱Low-Rank Adaptation of Large

    2024年02月05日
    瀏覽(24)
  • 【個人筆記本】本地化部署詳細流程 LLaMA中文模型:Chinese-LLaMA-Alpaca-2

    不推薦小白,環(huán)境配置比較復雜 下載原始模型:Chinese-LLaMA-Alpaca-2 linux部署llamacpp環(huán)境 使用llamacpp將Chinese-LLaMA-Alpaca-2模型轉換為gguf模型 windows部署Text generation web UI 環(huán)境 使用Text generation web UI 加載模型并進行對話 筆記本環(huán)境: 操作系統(tǒng):win11 CPU:AMD R7535HS GPU:筆記本4060顯卡

    2024年02月08日
    瀏覽(114)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包