当前位置: 首页 > news >正文

wordpress 主域名百度seo排名查询

wordpress 主域名,百度seo排名查询,天水市建设路第二小学网站,成都市网站建设设计前言 日常没空,留着以后写 llama-index简介 官网:https://docs.llamaindex.ai/en/stable/ 简介也没空,以后再写 注:先说明,随着官方的变动,代码也可能变动,大家运行不起来,可以进…

前言

日常没空,留着以后写

llama-index简介

官网:https://docs.llamaindex.ai/en/stable/

简介也没空,以后再写

注:先说明,随着官方的变动,代码也可能变动,大家运行不起来,可以进官网查查资料

加载本地embedding模型

如果没有找到 llama_index.embeddings.huggingface

那么:pip install llama_index-embeddings-huggingface

还不行进入官网,输入huggingface进行搜索

from llama_index.embeddings.huggingface import HuggingFaceEmbedding
from llama_index.core import SettingsSettings.embed_model = HuggingFaceEmbedding(model_name=f"{embed_model_path}",device='cuda')

 加载本地LLM模型

还是那句话,如果以下代码不行,进官网搜索Custom LLM Model

from llama_index.core.llms import (CustomLLM,CompletionResponse,CompletionResponseGen,LLMMetadata,
)
from llama_index.core.llms.callbacks import llm_completion_callback
from transformers import AutoTokenizer, AutoModelForCausalLMclass GLMCustomLLM(CustomLLM):context_window: int = 8192  # 上下文窗口大小num_output: int = 8000  # 输出的token数量model_name: str = "glm-4-9b-chat"  # 模型名称tokenizer: object = None  # 分词器model: object = None  # 模型dummy_response: str = "My response"def __init__(self, pretrained_model_name_or_path):super().__init__()# GPU方式加载模型self.tokenizer = AutoTokenizer.from_pretrained(pretrained_model_name_or_path, device_map="cuda", trust_remote_code=True)self.model = AutoModelForCausalLM.from_pretrained(pretrained_model_name_or_path, device_map="cuda", trust_remote_code=True).eval()# CPU方式加载模型# self.tokenizer = AutoTokenizer.from_pretrained(pretrained_model_name_or_path, device_map="cpu", trust_remote_code=True)# self.model = AutoModelForCausalLM.from_pretrained(pretrained_model_name_or_path, device_map="cpu", trust_remote_code=True)self.model = self.model.float()@propertydef metadata(self) -> LLMMetadata:"""Get LLM metadata."""# 得到LLM的元数据return LLMMetadata(context_window=self.context_window,num_output=self.num_output,model_name=self.model_name,)# @llm_completion_callback()# def complete(self, prompt: str, **kwargs: Any) -> CompletionResponse:#     return CompletionResponse(text=self.dummy_response)## @llm_completion_callback()# def stream_complete(#     self, prompt: str, **kwargs: Any# ) -> CompletionResponseGen:#     response = ""#     for token in self.dummy_response:#         response += token#         yield CompletionResponse(text=response, delta=token)@llm_completion_callback()  # 回调函数def complete(self, prompt: str, **kwargs: Any) -> CompletionResponse:# 完成函数print("完成函数")inputs = self.tokenizer.encode(prompt, return_tensors='pt').cuda()  # GPU方式# inputs = self.tokenizer.encode(prompt, return_tensors='pt')  # CPU方式outputs = self.model.generate(inputs, max_length=self.num_output)response = self.tokenizer.decode(outputs[0])return CompletionResponse(text=response)@llm_completion_callback()def stream_complete(self, prompt: str, **kwargs: Any) -> CompletionResponseGen:# 流式完成函数print("流式完成函数")inputs = self.tokenizer.encode(prompt, return_tensors='pt').cuda()  # GPU方式# inputs = self.tokenizer.encode(prompt, return_tensors='pt')  # CPU方式outputs = self.model.generate(inputs, max_length=self.num_output)response = self.tokenizer.decode(outputs[0])for token in response:yield CompletionResponse(text=token, delta=token)

基于本地模型搭建简易RAG

from typing import Anyfrom llama_index.core.llms import (CustomLLM,CompletionResponse,CompletionResponseGen,LLMMetadata,
)
from llama_index.core.llms.callbacks import llm_completion_callback
from transformers import AutoTokenizer, AutoModelForCausalLM
from llama_index.core import Settings,VectorStoreIndex,SimpleDirectoryReader
from llama_index.embeddings.huggingface import HuggingFaceEmbeddingclass GLMCustomLLM(CustomLLM):context_window: int = 8192  # 上下文窗口大小num_output: int = 8000  # 输出的token数量model_name: str = "glm-4-9b-chat"  # 模型名称tokenizer: object = None  # 分词器model: object = None  # 模型dummy_response: str = "My response"def __init__(self, pretrained_model_name_or_path):super().__init__()# GPU方式加载模型self.tokenizer = AutoTokenizer.from_pretrained(pretrained_model_name_or_path, device_map="cuda", trust_remote_code=True)self.model = AutoModelForCausalLM.from_pretrained(pretrained_model_name_or_path, device_map="cuda", trust_remote_code=True).eval()# CPU方式加载模型# self.tokenizer = AutoTokenizer.from_pretrained(pretrained_model_name_or_path, device_map="cpu", trust_remote_code=True)# self.model = AutoModelForCausalLM.from_pretrained(pretrained_model_name_or_path, device_map="cpu", trust_remote_code=True)self.model = self.model.float()@propertydef metadata(self) -> LLMMetadata:"""Get LLM metadata."""# 得到LLM的元数据return LLMMetadata(context_window=self.context_window,num_output=self.num_output,model_name=self.model_name,)# @llm_completion_callback()# def complete(self, prompt: str, **kwargs: Any) -> CompletionResponse:#     return CompletionResponse(text=self.dummy_response)## @llm_completion_callback()# def stream_complete(#     self, prompt: str, **kwargs: Any# ) -> CompletionResponseGen:#     response = ""#     for token in self.dummy_response:#         response += token#         yield CompletionResponse(text=response, delta=token)@llm_completion_callback()  # 回调函数def complete(self, prompt: str, **kwargs: Any) -> CompletionResponse:# 完成函数print("完成函数")inputs = self.tokenizer.encode(prompt, return_tensors='pt').cuda()  # GPU方式# inputs = self.tokenizer.encode(prompt, return_tensors='pt')  # CPU方式outputs = self.model.generate(inputs, max_length=self.num_output)response = self.tokenizer.decode(outputs[0])return CompletionResponse(text=response)@llm_completion_callback()def stream_complete(self, prompt: str, **kwargs: Any) -> CompletionResponseGen:# 流式完成函数print("流式完成函数")inputs = self.tokenizer.encode(prompt, return_tensors='pt').cuda()  # GPU方式# inputs = self.tokenizer.encode(prompt, return_tensors='pt')  # CPU方式outputs = self.model.generate(inputs, max_length=self.num_output)response = self.tokenizer.decode(outputs[0])for token in response:yield CompletionResponse(text=token, delta=token)if __name__ == "__main__":# 定义你的LLMpretrained_model_name_or_path = r'/home/nlp/model/LLM/THUDM/glm-4-9b-chat'embed_model_path = '/home/nlp/model/Embedding/BAAI/bge-m3'Settings.embed_model = HuggingFaceEmbedding(model_name=f"{embed_model_path}",device='cuda')Settings.llm = GLMCustomLLM(pretrained_model_name_or_path)documents = SimpleDirectoryReader(input_dir="home/xxxx/input").load_data()index = VectorStoreIndex.from_documents(documents,)# 查询和打印结果query_engine = index.as_query_engine()response = query_engine.query("萧炎的表妹是谁?")print(response)

ollama 

from llama_index.core import VectorStoreIndex, SimpleDirectoryReader, Settings
from llama_index.embeddings.huggingface import HuggingFaceEmbedding
from llama_index.llms.ollama import Ollamadocuments = SimpleDirectoryReader("data").load_data()# bge-base embedding model
Settings.embed_model = HuggingFaceEmbedding(model_name="BAAI/bge-base-en-v1.5")# ollama
Settings.llm = Ollama(model="llama3", request_timeout=360.0)index = VectorStoreIndex.from_documents(documents,
)

欢迎大家点赞或收藏

大家的点赞或收藏可以鼓励作者加快更新哟~

参加链接:

LlamaIndex中的CustomLLM(本地加载模型)
llamaIndex 基于GPU加载本地embedding模型
 

官网文档

官网_starter_example_loca

官网_usage_custom

http://www.shuangfujiaoyu.com/news/46754.html

相关文章:

  • 网上二手书网站开发中的问题和展望优化 英语
  • 设计建设网站游戏推广公司
  • 用dw做的代码怎么放在网站上公众号软文怎么写
  • 公司网站建设及维护提升神马seo关键词自然排名
  • 网站建设套餐佛山网络排名优化
  • 扒人家网站做网站媒体营销平台
  • 灵璧有做公司网站的吗今日头条普通版
  • 简述网络营销产品的概念手机优化大师
  • 阳江网站制作自助建站系统哪个好
  • seo的概念是什么学seo需要多久
  • 网站开发多用什么语言合肥推广外包公司
  • 做网站编程在程序搜狗指数官网
  • 班级网站设计报告 dreamwaver广州发布紧急通知
  • 吉林市做网站的公司哪家好什么是seo优化?
  • 网站设计标注图用什么做的东莞疫情最新情况
  • 购物网站制作怎么做营销策略都有哪些方面
  • 90设计网站免费素材百度下载官网
  • 网站开发技能介绍线上商城的推广方案
  • 日本a片女人和狗做的网站百度指数行业排行
  • 织梦做的网站今日的最新消息
  • 百度收录不了网站全国互联网营销大赛官网
  • 苏州网站建设渠道花西子网络营销案例分析
  • 网格系统网站seo sem什么意思
  • 建个网站能赚钱吗seo网站推广什么意思
  • 深圳专业网站开发公司福州今日头条新闻
  • 网站优化文章网站宣传和推广的方法有哪些
  • 蚌埠企业做网站彩虹云商城网站搭建
  • 旅游网站建设策划方案企业搜索引擎优化
  • 网站建设要做哪些工作衡阳网站优化公司
  • 软件测试三个月骗局优化设计三要素