国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
啟動nomic-embed-text 服務
使用nomic-embed-text 服務
1.讀取本機的txt 檔案
2.把txt 內容分割成文字區(qū)塊
3.對文字區(qū)塊執(zhí)行embeddings 動作
首頁 科技週邊 人工智慧 本地運作效能超越 OpenAI Text-Embedding-Ada-002 的 Embedding 服務,太方便了!

本地運作效能超越 OpenAI Text-Embedding-Ada-002 的 Embedding 服務,太方便了!

Apr 15, 2024 am 09:01 AM
效能 openai 模型

Ollama 是一款超級實用的工具,讓你能夠在本地輕鬆運行 Llama 2、Mistral、Gemma 等開源模型。本文我將介紹如何使用 Ollama 實作文本的向量化處理。如果你本地還沒有安裝 Ollama,可以閱讀這篇文章。

本文我們將使用?nomic-embed-text[2]?模型。它是一種文字編碼器,在短的上下文和長的上下文任務上,效能超越了 OpenAI text-embedding-ada-002 和 text-embedding-3-small。

啟動nomic-embed-text 服務

當你已經成功安裝好?ollama?之後,使用以下指令拉取?nomic-embed-text?模型:

ollama pull nomic-embed-text

待成功拉取模型之後,在終端機中輸入以下指令,啟動?ollama?服務:

ollama serve

之後,我們可以透過?curl?來驗證embedding 服務是否能正常運作:

curl http://localhost:11434/api/embeddings -d '{"model": "nomic-embed-text","prompt": "The sky is blue because of Rayleigh scattering"}'

使用nomic-embed-text 服務

接下來,我們將介紹如何利用langchainjs 和nomic-embed-text 服務,實作對本機txt 文件執(zhí)行embeddings 操作。對應的流程如下圖所示:

本地運行性能超越 OpenAI Text-Embedding-Ada-002 的 Embedding 服務,太方便了!圖片

1.讀取本機的txt 檔案

import { TextLoader } from "langchain/document_loaders/fs/text";async function load(path: string) {const loader = new TextLoader(path);const docs = await loader.load();return docs;}

在上述程式碼中,我們定義了一個?load?函數,該函數內部使用langchainjs 提供的?TextLoader?讀取本機的txt 文件。

2.把txt 內容分割成文字區(qū)塊

import { RecursiveCharacterTextSplitter } from "langchain/text_splitter";import { Document } from "langchain/document";function split(documents: Document[]) {const splitter = new RecursiveCharacterTextSplitter({chunkSize: 500,chunkOverlap: 20,});return splitter.splitDocuments(documents);}

在以上程式碼中,我們使用RecursiveCharacterTextSplitter 對讀取的txt 文字進行切割,並設定每個文本塊的大小是500。

3.對文字區(qū)塊執(zhí)行embeddings 動作

const EMBEDDINGS_URL = "http://127.0.0.1:11434/api/embeddings";async function embedding(path: string) {const docs = await load(path);const splittedDocs = await split(docs);for (let doc of splittedDocs) {const embedding = await sendRequest(EMBEDDINGS_URL, {model: "nomic-embed-text",prompt: doc.pageContent,});console.dir(embedding.embedding);}}

在上述程式碼中,我們定義了一個?embedding?函數,在該函數中,會呼叫前面定義的?load和?split?函數。之後對遍歷產生的文字區(qū)塊,然後呼叫本地啟動的?nomic-embed-text?embedding 服務。其中?sendRequest?函數用來傳送 embeding 請求,它的實作程式碼很簡單,就是使用 fetch API 呼叫現有的 REST API。

async function sendRequest(url: string, data: Record<string, any>) {try {const response = await fetch(url, {method: "POST",body: JSON.stringify(data),headers: {"Content-Type": "application/json",},});if (!response.ok) {throw new Error(`HTTP error! status: ${response.status}`);}const responseData = await response.json();return responseData;} catch (error) {console.error("Error:", error);}}

接著,我們繼續(xù)定義一個?embedTxtFile?函數,在該函數內部直接呼叫現有的?embedding?函數並新增對應的例外處理。

async function embedTxtFile(path: string) {try {embedding(path);} catch (error) {console.dir(error);}}embedTxtFile("langchain.txt")

最後,我們透過?npx esno src/index.ts?指令來快速執(zhí)行本地的 ts 檔案。若成功執(zhí)行?index.ts?中的程式碼,終端機將會輸出以下結果:

本地運行性能超越 OpenAI Text-Embedding-Ada-002 的 Embedding 服務,太方便了!#圖片

其實,除了使用上述的方式之外,我們也可以直接利用@langchain/community 模組中的?[OllamaEmbeddings](https://js.langchain.com/docs/integrations/text_embedding/ollama "OllamaEmbeddings")?對象,它內部封裝了呼叫ollama embedding 服務的邏輯:

import { OllamaEmbeddings } from "@langchain/community/embeddings/ollama";const embeddings = new OllamaEmbeddings({model: "nomic-embed-text", baseUrl: "http://127.0.0.1:11434",requestOptions: {useMMap: true,numThread: 6,numGpu: 1,},});const documents = ["Hello World!", "Bye Bye"];const documentEmbeddings = await embeddings.embedDocuments(documents);console.log(documentEmbeddings);

本文介紹的內容涉及發(fā)展?RAG?系統時,建立知識庫內容索引的處理過程。如果你對 RAG 系統還不了解的話,可以閱讀相關的文章。

參考資料

[1]Ollama:?https://ollama.com/

[2]nomic-embed-text:?https://ollama.com/ library/nomic-embed-text

#

以上是本地運作效能超越 OpenAI Text-Embedding-Ada-002 的 Embedding 服務,太方便了!的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發(fā)現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Laravel 教程
1601
29
PHP教程
1502
276
OpenAI超級對齊團隊遺作:兩個大模型博弈一番,輸出更好懂了 OpenAI超級對齊團隊遺作:兩個大模型博弈一番,輸出更好懂了 Jul 19, 2024 am 01:29 AM

如果AI模型給的答案一點也看不懂,你敢用嗎?隨著機器學習系統在更重要的領域中得到應用,證明為什麼我們可以信任它們的輸出,並明確何時不應信任它們,變得越來越重要。獲得對複雜系統輸出結果信任的一個可行方法是,要求系統對其輸出產生一種解釋,這種解釋對人類或另一個受信任的系統來說是可讀的,即可以完全理解以至於任何可能的錯誤都可以被發(fā)現。例如,為了建立對司法系統的信任,我們要求法院提供清晰易讀的書面意見,解釋並支持其決策。對於大型語言模型來說,我們也可以採用類似的方法。不過,在採用這種方法時,確保語言模型生

Yolov10:詳解、部署、應用一站式齊全! Yolov10:詳解、部署、應用一站式齊全! Jun 07, 2024 pm 12:05 PM

一、前言在過去的幾年里,YOLOs由于其在計算成本和檢測性能之間的有效平衡,已成為實時目標檢測領域的主導范式。研究人員探索了YOLO的架構設計、優(yōu)化目標、數據擴充策略等,取得了顯著進展。同時,依賴非極大值抑制(NMS)進行后處理阻礙了YOLO的端到端部署,并對推理延遲產生不利影響。在YOLOs中,各種組件的設計缺乏全面徹底的檢查,導致顯著的計算冗余,限制了模型的能力。它提供了次優(yōu)的效率,以及相對大的性能改進潛力。在這項工作中,目標是從后處理和模型架構兩個方面進一步提高YOLO的性能效率邊界。為此

無需OpenAI數據,躋身程式碼大模型榜單! UIUC發(fā)表StarCoder-15B-Instruct 無需OpenAI數據,躋身程式碼大模型榜單! UIUC發(fā)表StarCoder-15B-Instruct Jun 13, 2024 pm 01:59 PM

在軟件技術的前沿,UIUC張令明組攜手BigCode組織的研究者,近日公布了StarCoder2-15B-Instruct代碼大模型。這一創(chuàng)新成果在代碼生成任務取得了顯著突破,成功超越CodeLlama-70B-Instruct,登上代碼生成性能榜單之巔。StarCoder2-15B-Instruct的獨特之處在于其純自對齊策略,整個訓練流程公開透明,且完全自主可控。該模型通過StarCoder2-15B生成了數千個指令,響應對StarCoder-15B基座模型進行微調,無需依賴昂貴的人工標注數

清華接手,YOLOv10問世:效能大幅提升,登上GitHub熱門榜 清華接手,YOLOv10問世:效能大幅提升,登上GitHub熱門榜 Jun 06, 2024 pm 12:20 PM

目標偵測系統的標竿YOLO系列,再次獲得了重磅升級。自今年2月YOLOv9發(fā)布之後,YOLO(YouOnlyLookOnce)系列的接力棒傳到了清華大學研究人員的手上。上週末,YOLOv10推出的消息引發(fā)了AI界的關注。它被認為是電腦視覺領域的突破性框架,以其即時的端到端目標檢測能力而聞名,透過提供結合效率和準確性的強大解決方案,延續(xù)了YOLO系列的傳統。論文網址:https://arxiv.org/pdf/2405.14458專案網址:https://github.com/THU-MIG/yo

ChatGPT 現已可用於 macOS,並發(fā)布了專用應用程式 ChatGPT 現已可用於 macOS,並發(fā)布了專用應用程式 Jun 27, 2024 am 10:05 AM

Open AI 的 ChatGPT Mac 應用程式現在可供所有人使用,過去幾個月僅限訂閱 ChatGPT Plus 的用戶使用。只要您擁有最新的 Apple S,該應用程式的安裝就像其他本機 Mac 應用程式一樣

GoogleGemini 1.5技術報告:輕鬆證明奧數題,Flash版比GPT-4 Turbo快5倍 GoogleGemini 1.5技術報告:輕鬆證明奧數題,Flash版比GPT-4 Turbo快5倍 Jun 13, 2024 pm 01:52 PM

今年2月,Google上線了多模態(tài)大模型Gemini1.5,透過工程和基礎設施最佳化、MoE架構等策略大幅提升了效能和速度。擁有更長的上下文,更強推理能力,可以更好地處理跨模態(tài)內容。本週五,GoogleDeepMind正式發(fā)布了Gemini1.5的技術報告,內容涵蓋Flash版等最近升級,該文件長達153頁。技術報告連結:https://storage.googleapis.com/deepmind-media/gemini/gemini_v1_5_report.pdf在本報告中,Google介紹了Gemini1

18個月,OpenAI這支團隊搞出了GPT-4o 18個月,OpenAI這支團隊搞出了GPT-4o Jun 13, 2024 am 10:33 AM

奧特曼:如果沒有他(PrafullaDhariwal)的遠見、才華、信念和決心,就不會有GPT-4o。 「GPT-4o的誕生離不開@prafdhar的遠見、才華、信念和長期以來的堅定決心。正是這些努力(以及許多其他人的工作)促成了我希望會成為計算機使用方式革命的成果?!痹贠penAI發(fā)布新一代旗艦生成模型GPT-4o後的兩天,OpenAICEO奧特曼對參與該計畫的其中一位負責人評論道。在經過與OpenAI的多個團隊合作的18個月裡,聯合創(chuàng)始人GregBrockman表示:「GPT-4o是整個團隊努

模組化重構LLaVA,替換組件只需添加1-2個文件,開源TinyLLaVA Factory來了 模組化重構LLaVA,替換組件只需添加1-2個文件,開源TinyLLaVA Factory來了 Jun 08, 2024 pm 09:21 PM

TinyLLaVA+計畫由清華大學電子系多媒體訊號與智慧資訊處理實驗室(MSIIP)吳及教授團隊及北京航空航天大學人工智慧學院黃雷老師團隊聯袂打造。清華大學MSIIP實驗室長期致力於智慧醫(yī)療、自然語言處理與知識發(fā)現、多模態(tài)等研究領域。北京航空團隊長期致力於深度學習、多模態(tài)、電腦視覺等研究領域。 TinyLLaVA+計畫的目標是開發(fā)一種小型跨語言智慧助手,具備語言理解、問答、對話等多模態(tài)能力。專案團隊將充分發(fā)揮各自的優(yōu)勢,共同攻克技術難題,實現智慧助理的設計與開發(fā)。這將為智慧醫(yī)療、自然語言處理與知

See all articles