1 Star 0 Fork 0

linjk/Jarvis

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
models_llama2.py 1.15 KB
一键复制 编辑 原始数据 按行查看 历史
linjk 提交于 2024-05-01 11:00 . model llama2 ok
import torch
import config
from llama_cpp import Llama
from typing import Optional, List, Mapping, Any
from langchain.llms.base import LLM
class model_llama2_local(LLM):
model_llama: object
def _call(self, prompt: str, stop: Optional[List[str]] = None) -> str:
if torch.cuda.is_available():
print(f"CUDA device name: {torch.cuda.get_device_name(0)}")
else:
print("CUDA is not available. Will use CPU...")
for llm in config.get_config().models.llms:
if llm.name == "llama2-7b-ggml" and llm.enable == 1:
self.model_llama = llm
if self.model_llama is None:
raise Exception("llama2-7b-ggml is not enabled")
prompt_length = len(prompt) + 5
llm = Llama(model_path=self.model_llama.path, n_threads=4)
response = llm(f"Q: {prompt} A: ", max_tokens=256)
output = response['choices'][0]['text'].replace('A: ', '').strip()
return output[prompt_length:]
@property
def _identifying_params(self) -> Mapping[str, Any]:
return {"name_of_model": "llama2"}
@property
def _llm_type(self) -> str:
return "custom"
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/linjk/jarvis.git
git@gitee.com:linjk/jarvis.git
linjk
jarvis
Jarvis
master

搜索帮助

0d507c66 1850385 C8b1a773 1850385