使用 Ollama 时遇到的问题

题意:

ImportError: cannot import name 'Ollama' from 'llama_index.llms' (unknown location) - installing dependencies does not solve the problem

Python 无法从 llama_index.llms 模块中导入名为 Ollama 的类或函数

问题背景:

I want to learn LLMs. I run Ollama with the following Docker Compose file - it's running:

我想学习大型语言模型(LLMs)。我使用以下Docker Compose文件运行Ollama,并且它正在运行:

services:ollama:image: ollama/ollama:latestports:- 11434:11434volumes:- ollama_data:/root/.ollamahealthcheck:test: ollama list || exit 1interval: 10stimeout: 30sretries: 5start_period: 10sollama-models-pull:image: curlimages/curl:8.6.0command: >-http://ollama:11434/api/pull -d '{"name": "mistral"}'depends_on:ollama:condition: service_healthy
volumes:ollama_data:

I would like to write a Python app, which will use ollama, and I found this piece of code:

我想编写一个使用Ollama的Python应用程序,我找到了以下代码片段:

from llama_index.llms import Ollama, ChatMessagellm = Ollama(model="mistral", base_url="http://127.0.0.1:11434")messages = [ChatMessage(role="system", content="you are a multi lingual assistant used for translation and your job is to translate nothing more than that."),ChatMessage(role="user", content="please translate message in triple tick to french ``` What is standard deviation?```")
]
resp = llm.chat(messages=messages)
print(resp)

I installed all dependencies:        我安装了所有依赖

python3 -m venv venv
source venv/bin/activate
pip install llama-index  
pip install llama-index-llms-ollama
pip install ollama-python

However, when I run the app, I got:        当我运行app时,得到以下信息:

Traceback (most recent call last):File "/home/user/test.py", line 1, in <module>from llama_index.llms import Ollama, ChatMessage
ImportError: cannot import name 'Ollama' from 'llama_index.llms' (unknown location)

where can be the problem?        问题可能在哪里?

问题解决:

The correct way to import Ollama should be:        引入 ollama 的正确方式:

from llama_index.llms.ollama import Ollama

For ChatMessage it should be:  引入 ChatMessage 的方式:

from llama_index.core.llms import ChatMessage

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/865481.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【postgreessql 】统计库中的所有表数量

在PostgreSQL中&#xff0c;你可以使用SQL查询来统计数据库中的所有表数量。这通常涉及到查询系统目录表&#xff0c;特别是 pg_catalog.pg_tables 表&#xff0c;它存储了关于数据库中所有表的信息。 SELECT COUNT(*) FROM information_schema.tables WHERE table_schema IN …

第二十五章 迭代器(Iterator)(Python)

文章目录 前言一、什么是迭代器&#xff1f;二、如何生成迭代器&#xff1f; 前言 迭代器是为了给迭代对象进行迭代使用的&#xff0c;是访问集合元素的一种方式。从集合的第一个元素开始访问&#xff0c;直到所有的元素被访问完结束。迭代器只能往前不会后退。 列表、集合、元…

mysql逗号分割字符串“1,2,3”实现in查询

数据示例 前台单值参数实现in查询 主要函数FIND_IN_SET 该函数的作用是查询字段(strlist) 中是否包含(str)的结果&#xff0c;返回结果为 null或记录 select id,recommend_position_id from t_stk_task where FIND_IN_SET(359919,recommend_position_id)查询效果 前台集…

小麦TaHRC信息汇总

文献中关于TaHRC的信息总结 主要发现: TaHRC基因的功能和定位: TaHRC基因编码一个富含组氨酸的钙结合蛋白&#xff0c;定位于核内。TaHRC-S&#xff08;敏感等位基因&#xff09;的高表达与小麦穗腐病&#xff08;FHB&#xff09;的敏感性相关 。通过RNA干扰和CRISPR-Cas9基因…

【软件测试】性能测试 | 概念 | 常见术语 | 性能指标 | 分类 | 流程

性能测试 文章目录 性能测试一、什么是性能测试1.生活中遇到的软件的性能问题2.性能测试定义3.性能测试和功能测试有什么区别4.什么样的表现属于软件性能好、什么样的表现不好5.影响一个软件性能因素有哪些 二、为什么进行性能测试三、性能测试的常见术语以及性能测试的衡量指标…

C++部分复习笔记下

7. C11 范围for 使用格式 vector<int> v { 1,2,3,4,5 }; for (auto e : v) {cout << e << " "; } cout << endl;底层原理&#xff0c;使用迭代器 vector<int> v { 1,2,3,4,5 }; auto it v.begin(); while (it ! v.end()) {cout…

如何在TechNow招聘顶尖AI工程师

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

Vue3中h函数

Vue3认识h函数 Vue推荐在绝大数情况下使用模板来创建你的HTML&#xff0c;然后一些特殊的场景&#xff0c;你真的需要JavaScript的完全编程的能力&#xff0c;这个时 候你可以使用 渲染函数 &#xff0c;它比模板更接近编译器&#xff1b; 前面我们讲解过VNode和VDOM的概念&a…

PolyGen: An Autoregressive Generative Model of 3D Meshes代码polygen_decoder.py解读

论文&#xff1a;PolyGen: An Autoregressive Generative Model of 3D Meshes 首先阅读transformer铺垫知识《Torch中Transformer的中文注释》。 以下为Encoder部分&#xff0c;很简单&#xff0c;小学生都会&#xff1a; from typing import Dict, Optional, Tuple import …

设计模式学习-《策略模式》

策略模式 问题描述&#xff1a; 有各种鸭子(北京鸭、玩具鸭)&#xff0c;鸭子有各种行为(叫、飞)希望能够实现不同的鸭子&#xff0c;显示不同鸭子的信息 传统方法会创建一个抽象类 public abstract class Duck{public Duck(){}public abstract void display();//显示鸭子信…

Spring Boot 高级配置:如何轻松定义和读取自定义配置

目录 1. 环境准备 2. 读取配置数据 2.1 使用 Value注解 2.2 Environment对象 2.3.2.3 自定义对象 这篇博客我们将深入探讨如何在Spring Boot应用中有效地定义和读取自定义配置。掌握这一技巧对于任何希望优化和维护其应用配置的开发者来说都是至关重要的。我们将从基础开始…

企业消费采购成本和员工体验如何实现“鱼和熊掌“的兼得?

有企业说企业消费采购成本和员工体验的关系好比是“鱼和熊掌”&#xff0c;无法兼得&#xff1f; 要想控制好成本就一定要加强管控&#xff0c;但是加强管控以后&#xff0c;就会很难让员工获得满意的体验度。如果不加以管控&#xff0c;员工自由度增加了&#xff0c;往往就很难…

动态住宅代理IP的3个优点

在大数据时代的背景下&#xff0c;代理IP成为了很多企业顺利开展的重要工具。代理IP地址可以分为住宅代理IP地址和数据中心代理IP地址。选择住宅代理IP的好处是可以实现真正的高匿名性&#xff0c;而使用数据中心代理IP可能会暴露自己使用代理的情况。 住宅代理IP是指互联网服务…

Jenkins教程-13-参数化任务构建

上一小节我们学习了发送html邮件测试报告的方法&#xff0c;本小节我们讲解一下Jenkins参数化任务构建的方法。 很多时候我们需要根据不同的条件去执行构建&#xff0c;如自动化测试中执行test、stg、prod环境的构建&#xff0c;Jenkins是支持参数化构建的。 以下是Jenkins官…

前端如何封装一个成熟的函数

前言 在前端开发中&#xff0c;封装函数是一种关键的实践&#xff0c;它能帮助我们更有效地管理代码、提高代码复用性和可维护性。 一个转换单位的工具函数 function setUnit(value,unit){switch(unit){case 白:return value / 100 unit;case 千:return value /1000 unit;…

web学习笔记(七十四)

目录 1.小程序常用组件 1.1 view 1.2 navigator 1.3 block 1.4 text 2.数据绑定 3.数据渲染 4.列表渲染 5.条件渲染 wx:if 和 hidden的区别 1.小程序常用组件 1.1 view <view>是布局容器 相当于div 我们通常习惯给页面包裹一个根组件&#xff0c;但是小程序…

Java 基本数据类型和引用数据类型有什么区别?

在Java世界里&#xff0c;数据类型是构建程序的基石&#xff0c;它们决定了变量可以存储什么类型的值以及如何操作这些值。 Java的数据类型大致可以分为两大类&#xff1a;基本数据类型&#xff08;Primitive Data Types&#xff09;和引用数据类型&#xff08;Reference Data…

【C语言】手撕结构体内存对齐

©作者:末央&#xff06; ©系列:C语言初阶(适合小白入门) ©说明:以凡人之笔墨&#xff0c;书写未来之大梦 目录 结构体对齐规则结构体大小计算 - 三步曲 结构体对齐规则 怎么计算结构体的内存大小。这就涉及到结构体内存对齐的问题。 结构体的第⼀个成员对⻬到…

构建Memcached集群:深入集群部署的策略与实践

构建Memcached集群&#xff1a;深入集群部署的策略与实践 Memcached是一款高性能的分布式内存缓存系统&#xff0c;广泛应用于提高Web应用的性能和扩展性。集群部署Memcached可以提供更高的缓存容量和可用性。本文将深入探讨Memcached集群部署的策略和注意事项&#xff0c;并提…

【C++】多态详解

&#x1f497;个人主页&#x1f497; ⭐个人专栏——C学习⭐ &#x1f4ab;点击关注&#x1f929;一起学习C语言&#x1f4af;&#x1f4ab; 目录 一、多态概念 二、多态的定义及实现 1. 多态的构成条件 2. 虚函数 2.1 什么是虚函数 2.2 虚函数的重写 2.3 虚函数重写的两个…