参考这一篇: https://blog.lemonhall.me/notesview/show/484 

如何在wsl2+ollama环境下成功配置Enchanted,使其成功与局域网LLM对话

2、配置ollama本身,改变其监听范围

【参考资料: https://github.com/ollama/ollama/issues/1431 】

sudo vim /etc/systemd/system/ollama.service


[Service]
Environment="OLLAMA_HOST=0.0.0.0:11434"
Environment="OLLAMA_ORIGINS=*"

因为我的wsl2的网络比较特殊

PS C:\Users\lemon> wsl
wsl: 检测到 localhost 代理配置,但未镜像到 WSL。NAT 模式下的 WSL 不支持 localhost 代理。
-bash: HISTSIZE: command not found
lemonhall@LEMON-HP-LAPTOP:/mnt/c/Users/lemon$

【参考资料: https://github.com/microsoft/WSL/issues/10753 】

我采用的是他的方案:

%USERPROFILE%\.wslconfig

所以我是在\lemon文件夹下新建了.wslconfig这么一个文件的

[experimental]
autoMemoryReclaim=gradual  # gradual  | dropcache | disabled
networkingMode=mirrored
dnsTunneling=true
firewall=true
autoProxy=true

所以我在wsl2的ubuntu的shell里面执行ifconfig时

会拿到和host主机一样的网络地址

故而,最后,我在ollama里面的监听地址

只需要配置0.0.0.0即可

这里需要注意

好了,成功之后重启服务

sudo systemctl daemon-reload
sudo systemctl restart ollama

现在就监听在11434端口了

但还需要操作windows本身的防火墙

New-NetFireWallRule -DisplayName 'WSL firewall unlock' -Direction Outbound -LocalPort 11434 -Action Allow -Protocol TCP
New-NetFireWallRule -DisplayName 'WSL firewall unlock' -Direction Inbound -LocalPort 11434 -Action Allow -Protocol TCP

需要注意的是

这两行命令需要右键PowerShell这边,以管理员身份执行

执行成功后:

类似如上输出

然后在Enchanted下做如下类似的配置(局域网)

也可以使用转发服务把这个地址映射到外网去

然后回到聊天界面,就可以看到可聊天的状态了

================================================

配置AnythingLLM

有点麻烦,因为需要设置embbing

明天再说