flaskAPI / main.py
TruVlad's picture
Upload folder using huggingface_hub
486a947 verified
Raw
History Blame
4.4 kB
from flask import Flask
import ollama
app = Flask(__name__)
@app.route('/')
def hello_world():
return "<h1>Hello, World!<h1>"
@app.route('/list')
def test_world():
from ollama import ListResponse, list
response: ListResponse = list()
ansver = []
for model in response.models:
ansver.append(f'Name:{model.model}')
ansver.append(f' Size (MB): {(model.size.real / 1024 / 1024):.2f}')
if model.details:
ansver.append(f' Format: {model.details.format}')
ansver.append(f' Family: {model.details.family}')
ansver.append(f' Parameter Size: {model.details.parameter_size}')
ansver.append(f' Quantization Level:{model.details.quantization_level}')
result = [f'<p>{answ}</p>' for answ in ansver ]
return '\n'.join(result)
@app.route('/ps')
def ps():
from ollama import ProcessResponse, chat, ps, pull
ansver = []
response: ProcessResponse = ps()
for model in response.models:
ansver.append(f'Model: {model.model}')
ansver.append(f' Digest: {model.digest}')
ansver.append(f' Expires at: {model.expires_at}')
ansver.append(f' Size: {model.size}')
ansver.append(f' Size vram: {model.size_vram}')
ansver.append(f' Details: {model.details}')
ansver.append(f' Context length: {model.context_length}')
ansver.append(f'\n')
response: ListResponse = list()
for model in response.models:
ansver.append(f'Name:{model.model}')
ansver.append(f' Size (MB): {(model.size.real / 1024 / 1024):.2f}')
if model.details:
ansver.append(f' Format: {model.details.format}')
ansver.append(f' Family: {model.details.family}')
ansver.append(f' Parameter Size: {model.details.parameter_size}')
ansver.append(f' Quantization Level:{model.details.quantization_level}')
result = [f'<p>{answ}</p>' for answ in ansver ]
return '\n'.join(result)
@app.route('/time')
def test_time():
from datetime import datetime
from ollama import Client
from ollama import chat
t_start=datetime.now()
ansver = []
messages = [
{
'role': 'user',
'content': 'Расскажи о себе подробно',
},
]
response = chat('qwen3:0.6b', messages=messages)
ansver.append(f' start {t_start} ')
response_time=datetime.now()-t_start
ansver.append(f' duration {response_time} ')
#
response_len = len(response['message']['content'])
ansver.append(f" lehgth {response_len}")
response_speed=response_len/int(response_time.seconds)
ansver.append(f" token/sek {response_len}")
ansver.append(response['message']['content'])
result = [f'<p>{answ}</p>' for answ in ansver ]
return '\n'.join(result)
@app.route('/time14')
def test_time14():
from datetime import datetime
from ollama import Client
from ollama import chat
t_start=datetime.now()
ansver = []
messages = [
{
'role': 'user',
'content': 'Расскажи о себе подробно',
},
]
response = chat('qwen3:30b', messages=messages)
ansver.append(f' start {t_start} ')
response_time=datetime.now()-t_start
ansver.append(f' duration {response_time} ')
#
response_len = len(response['message']['content'])
ansver.append(f" lehgth {response_len}")
response_speed=response_len/int(response_time.seconds)
ansver.append(f" token/sek {response_len}")
ansver.append(response['message']['content'])
result = [f'<p>{answ}</p>' for answ in ansver ]
return '\n'.join(result)
@app.route('/time30')
def test_time30():
from datetime import datetime
from ollama import Client
from ollama import chat
t_start=datetime.now()
ansver = []
messages = [
{
'role': 'user',
'content': 'Расскажи о себе подробно',
},
]
response = chat('qwen3:30b', messages=messages)
ansver.append(f' start {t_start} ')
response_time=datetime.now()-t_start
ansver.append(f' duration {response_time} ')
#
response_len = len(response['message']['content'])
ansver.append(f" lehgth {response_len}")
response_speed=response_len/int(response_time.seconds)
ansver.append(f" token/sek {response_len}")
ansver.append(response['message']['content'])
result = [f'<p>{answ}</p>' for answ in ansver ]
return '\n'.join(result)
if __name__ == '__main__':
app.run(host='0.0.0.0', port="7860")