Модель Ollama сохраняется в памяти и предотвращает разгрузку между запросами (Keep_alive?)Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Модель Ollama сохраняется в памяти и предотвращает разгрузку между запросами (Keep_alive?)

Сообщение Anonymous »

Независимо от того, что я делаю из терминала или в коде, агент просит моделей Ollama, каждый раз занимает 15–25 секунд на моем локальном M2 Macbook Pro.
Я почти уверен, что это не проблема с оборудованием, потому что модель быстро быстро используется в терминале. Пробовал разные модели -аналогичный результат.
Пробовал позвонить через http -не так уж и много улучшения.
Итак, мой вывод заключается в том, что модель каждый раз не загружает память и загружается по новым запросам. И это можно изменить при запуске от CLI, но я не мог найти документы о том, как использовать его в Python, хотя, по-видимому, есть фиксированная ошибка при добавлении этой функции. PrettyPrint-Override ">
import json
import asyncio

from library import Model
from pydantic import BaseModel
import ollama

class ModelOllama(Model):
def __init__(self, name: str):
super().__init__(name)

def _get_client(self):
return ollama

def _format(self, schema: BaseModel):
return schema.model_json_schema()

async def __call__(self,
prompt : str,
response_schema : BaseModel,
role : str = 'user',
temperature : float = 0.0
):
params = {
'model' : self.name,
'messages' : [{
'role' : role,
'content' : prompt
}],
'format' : self._format(response_schema),
'options' : {
'temperature': temperature,
# 'num_gpu': 1, # Use GPU acceleration if available
# 'num_thread': 6, # Use multiple threads
'keep_alive': 60 # Keep model loaded for 1 minute (60 seconds)
}
}

try:
response = await asyncio.to_thread(self.client.chat, **params)
output = json.loads(response['message']['content'])
except json.JSONDecodeError as e:
raise Exception(f'OllamaModel json parsing error: {e}')
except Exception as e:
raise Exception(f'OllamaModel LLM communication error: {e}')

return output


Подробнее здесь: https://stackoverflow.com/questions/795 ... keep-alive
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»