首页 > 后端开发 > Python教程 > Ollama - 定制模型 - llama

Ollama - 定制模型 - llama

Mary-Kate Olsen
发布: 2024-12-03 02:16:09
原创
835 人浏览过

导入 ollama 库。

import ollama

登录后复制
登录后复制

创建一个类来配置自定义模型。

方法:

  • init:使用名称、系统和温度等属性初始化模型。
  • name_custom:返回自定义名称。
  • get_description:创建 ModelFile 结构。
class ModelFile:
    def __init__(self, model: str, name_custom: str, system: str, temp: float = 0.1) -> None:
        self.__model = model
        self.__name_custom = name_custom
        self.__system = system
        self.__temp = temp

    @property
    def name_custom(self):
        return self.__name_custom

    def get_description(self):
        return (
            f"FROM {self.__model}\n"
            f"SYSTEM {self.__system}\n"
            f"PARAMETER temperature {self.__temp}\n"
        )

登录后复制
  • 创建一个函数来列出所有可用模型。
  • 输出:返回在ollama 中注册的模型列表。
def ollama_list() -> None:
    response_ollama = ollama.list()
    return response_ollama['models']
登录后复制

创建一个函数以根据传递的配置构建自定义模型。

def ollama_build(custom_config: ModelFile) -> None:
    ollama.create(
        model=custom_config.name_custom,
        modelfile=custom_config.get_description()
    )
登录后复制

创建一个函数来检查自定义模型是否存在。

def check_custom_model(name_model) -> None:
    models = ollama_list()
    models_names = [model['name'] for model in models]
    if f'{name_model}:latest' in models_names:
        print('Exists')
    else:
        raise Exception('Model does not exists')

登录后复制

创建一个函数以根据提供的模板和提示生成响应。

def ollama_generate(name_model, prompt) -> None:
    response_ollama = ollama.generate(
        model=name_model,
        prompt=prompt
    )
    print(response_ollama['response'])

登录后复制

创建一个函数来按名称删除模型。

def ollama_delete(name_model) -> None:
    ollama.delete(name_model)

登录后复制

创建一个函数来排序构建、验证和使用模型的步骤。

def main(custom_config: ModelFile, prompt) -> None:
    ollama_build(custom_config)
    check_custom_model(custom_config.name_custom)
    ollama_generate(custom_config.name_custom, prompt)
    # ollama_delete(custom_config.name_custom)

登录后复制

设置提示并配置模型文件模板。

输入:

  • 型号:llama3.2
  • 自定义名称:xeroxvaldo_sharopildo
  • 系统:智能动漫助手。

输出:运行主函数来创建模型,检查其是否存在,并生成对提示的响应。

if __name__ == "__main__":
    prompt: str = 'Who is Naruto Uzumaki ?'
    MF: ModelFile = ModelFile(
        model='llama3.2',
        name_custom='xeroxvaldo_sharopildo',
        system='You are very smart assistant who knows everything about Anime',
    )
    main(MF, prompt)

登录后复制

输出:

漩涡鸣人是岸本正史创作的流行日本漫画和动画系列“火影忍者”的主角。他是来自木叶村的年轻忍者,梦想成为火影,成为村里的领袖。

鸣人以其决心、勇敢和强烈的正义感而闻名。他还以其独特的忍者风格而闻名,其中包括使用他的九尾查克拉(他拥有的强大能量)来增强他的身体能力。

在整个系列中,鸣人面临着无数的挑战和对手,包括来自不同村庄的其他忍者,以及像晓成员和十尾人柱力这样的强大敌人。尽管面临许多挫折和失败,鸣人仍坚持不懈,并在克服每一次挑战时变得更加坚强。

鸣人的性格发展是该系列的中心主题,因为他学到了关于友谊、牺牲和成为忍者的真正意义的宝贵教训。他与队友春野樱和宇智波佐助的关系对于塑造他的性格和成长尤为重要。

火影忍者系列由两个主要篇章组成:原始《火影忍者》篇章(2002-2007)和《火影忍者疾风传》篇章(2007-2014)。后者是第一部的延续,鸣人现在更老、更强大。

总的来说,漩涡鸣人是一个标志性的动漫人物,俘获了全世界数百万人的心。他鼓舞人心的故事和令人难忘的个性使他成为动漫史上最受欢迎的角色之一!

import ollama

登录后复制
登录后复制

参考

  • 奥拉玛
  • 记下这个项目
  • Ollama 模型定制

作者笔记

非常感谢您阅读本文。如果您能喜欢并分享,我将非常感激。如果您不喜欢它,我不知道您是否喜欢这篇文章。这样,您可以帮助我知道应该在哪些方面改进我的帖子。谢谢。


我的最新帖子

Ollama - Custom Model - llama

你是说免费 GPU 吗?

sc0v0ne ・ 2 月 29 日

#Python #GPU #人工智能 #机器学习
Ollama - Custom Model - llama

我作为软件开发人员的超能力 - 2024

sc0v0ne ・ 1 月 6 日

#工具 #软件开发 #工作站 #生产率
Ollama - Custom Model - llama

通过番茄工作法提高效率

sc0v0ne ・ 2 月 12 日

#工具 #生产率 #软件开发

收藏夹 项目 开源

  • ?蟒蛇
  • ?️ 深度学习
  • ?计算机视觉
  • ?️ Linux
  • ?时代系列
  • ?数据库
  • ?铁锈
  • ?️ 机器学习
  • ?️ 路线图

关于作者:

sc0v0ne image

sc0v0ne

这个博客是为了创建一些关于我正在研究的主题的帖子,我分享它们以帮助其他用户。

更多关于我的信息...

信息系统学士毕业,在大学里接触过不同的技术。一路上,我参加了人工智能课程,在那里我第一次接触了机器学习和Python。从那时起,我就开始热衷于了解这个领域。今天,我从事机器学习和深度学习开发通信软件的工作。在此过程中,我创建了一个博客,在其中创建了一些关于我正在研究的主题的帖子,并分享它们以帮助其他用户。

我目前正在学习 TensorFlow 和计算机视觉

好奇心:我喜欢咖啡

  • 卡格尔
  • Github
  • 乳齿象

以上是Ollama - 定制模型 - llama的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板