我运行了一个脚本来获取 ngrok url:
import asyncio
# Set LD_LIBRARY_PATH so the system NVIDIA library
os.environ.update({'LD_LIBRARY_PATH': '/usr/lib64-nvidia'})
async def run_process(cmd):
print('>>> starting', *cmd)
p = await asyncio.subprocess.create_subprocess_exec(
*cmd,
stdout=asyncio.subprocess.PIPE,
stderr=asyncio.subprocess.PIPE,
)
async def pipe(lines):
async for line in lines:
print(line.strip().decode('utf-8'))
await asyncio.gather(
pipe(p.stdout),
pipe(p.stderr),
)
await asyncio.gather(
run_process(['ngrok', 'config', 'add-authtoken','mytoken'])
)
await asyncio.gather(
run_process(['ollama', 'serve']),
run_process(['ngrok', 'http', '--log', 'stderr', '11434']),
)
之后,我在 MAC 终端上运行了命令
export OLLAMA_HOST = url
和 ollama pull llama2
。
最后,我使用Python运行了下面的代码:
ollama = Ollama(base_url=url, model="llama2")
print(ollama("why is the sky blue"))
但它给出了错误404。
我尝试在 Python 上安装 ngrok 并设置身份验证令牌,我希望它可以连接到 url。但它仍然给了我 404 错误。
我也面临同样的问题。 ollama 服务器仍然存在问题。服务器没有响应,但现在可以通信。尝试在 ollama 托管计算机上使用命令
11434
打开端口 sudo ufw allow tcp/11434
。如果这不起作用,请尝试以下操作:
sudo systemctl stop ollama.service
sudo nano /etc/systemd/system/ollama.service
#add a line Environment under section [Service]:
[Service]
Environment="OLLAMA_HOST=0.0.0.0"
sudo systemctl daemon-reload
sudo systemctl restart ollama.service
ngrok http --log stderr 11434
现在在您的代码或您想要的位置使用 Ngrok URL。但我仍然收到错误
引发连接错误(错误,请求=请求) requests.exceptions.ConnectionError: ('连接中止。', RemoteDisconnected('远程端关闭连接而无响应'))