FreeAskInternet
FreeAskInternet is a completely free, private and locally running search aggregator & answer generate using LLM, Without GPU needed. The user can ask a question and the system will use searxng to make a multi engine search and combine the search result to the ChatGPT3.5 LLM and generate the answer based on search results. All process running locally and No GPU or OpenAI or Google API keys are needed.
git clone https://github.com/nashsu/FreeAskInternet.git
cd ./FreeAskInternet
docker-compose up -d
Feeling spicy ? Try this shit out:
networks:
freeaskinternet_default:
external: true
name: "freeaskinternet_default"
services:
freeaskinternet-backend-1:
command:
- "server.py"
container_name: "freeaskinternet-backend-1"
entrypoint:
- "python3"
environment:
- "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- "LANG=C.UTF-8"
- "GPG_KEY=E3FF2839C048B25C084DEBE9B26995E310250568"
- "PYTHON_VERSION=3.9.15"
- "PYTHON_PIP_VERSION=22.0.4"
- "PYTHON_SETUPTOOLS_VERSION=58.1.0"
- "PYTHON_GET_PIP_URL=https://github.com/pypa/get-pip/raw/66030fa03382b4914d4c4d0896961a0bdeeeb274/public/get-pip.py"
- "PYTHON_GET_PIP_SHA256=1e501cf004eac1b7eb1f97266d28f995ae835d30250bec7f8850562703067dc6"
expose:
- "8000/tcp"
hostname: "55226ab67b8a"
image: "docker.io/nashsu/free_ask_internet:latest"
ipc: "private"
labels:
com.docker.compose.config-hash: "f5f70b9ca8856bc79cbc29ef1d8b507e48287735f54d6f1faba0ab4f39e2fd2c"
com.docker.compose.container-number: "1"
com.docker.compose.depends_on: "llm-freegpt35:service_started:false"
com.docker.compose.image: "sha256:98fe4e92e1c51ddf4963400c19edc998ecab4d928ecf56cad59c519881572d7f"
com.docker.compose.oneoff: "False"
com.docker.compose.project: "freeaskinternet"
com.docker.compose.project.config_files: "/srv/Files/FreeAskInternet/docker-compose.yaml"
com.docker.compose.project.working_dir: "/srv/Files/FreeAskInternet"
com.docker.compose.service: "backend"
com.docker.compose.version: "2.27.0"
logging:
driver: "json-file"
options: {}
networks:
- "freeaskinternet_default"
restart: "on-failure"
working_dir: "/app"
freeaskinternet-chatgpt-next-web-1:
command:
- "/bin/sh"
- "-c"
- "if [ -n \"$PROXY_URL\" ]; then export HOSTNAME=\"127.0.0.1\"; protocol=$(echo $PROXY_URL\
\ | cut -d: -f1); host=$(echo $PROXY_URL | cut -d/ -f3 | cut -d: -f1); port=$(echo $PROXY_URL\
\ | cut -d: -f3); conf=/etc/proxychains.conf; echo \"strict_chain\" > $conf; echo\
\ \"proxy_dns\" >> $conf; echo \"remote_dns_subnet 224\" >> $conf; echo \"tcp_read_time_out\
\ 15000\" >> $conf; echo \"tcp_connect_time_out 8000\" >> $conf; echo \"localnet 127.0.0.0/255.0.0.0\"\
\ >> $conf; echo \"localnet ::1/128\" >> $conf; echo \"[ProxyList]\" >> $conf; echo\
\ \"$protocol $host $port\" >> $conf; cat /etc/proxychains.conf; proxychains -f $conf\
\ node server.js; else node server.js; fi"
container_name: "freeaskinternet-chatgpt-next-web-1"
entrypoint:
- "docker-entrypoint.sh"
environment:
- "CUSTOM_MODELS=-all,+gpt-3.5-turbo"
- "OPENAI_API_KEY=FreeAskInternet"
- "BASE_URL=http://backend:8000"
- "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- "NODE_VERSION=18.20.2"
- "YARN_VERSION=1.22.19"
- "PROXY_URL="
- "GOOGLE_API_KEY="
- "CODE="
hostname: "d91bd72f9ceb"
image: "yidadaa/chatgpt-next-web"
ipc: "private"
labels:
com.docker.compose.config-hash: "995ddb15df366e72330778bffbf3b3ff94fb96314af4399cf0e9da8daa43cac3"
com.docker.compose.container-number: "1"
com.docker.compose.depends_on: "llm-freegpt35:service_started:false"
com.docker.compose.image: "sha256:f4666e8c59d9e864d55aad3700f0de304bded7fb3d0acd6008938959627a2c66"
com.docker.compose.oneoff: "False"
com.docker.compose.project: "freeaskinternet"
com.docker.compose.project.config_files: "/srv/Files/FreeAskInternet/docker-compose.yaml"
com.docker.compose.project.working_dir: "/srv/Files/FreeAskInternet"
com.docker.compose.service: "chatgpt-next-web"
com.docker.compose.version: "2.27.0"
org.opencontainers.image.created: "2024-05-14T09:37:52.274Z"
org.opencontainers.image.description: "A cross-platform ChatGPT/Gemini UI (Web / PWA / Linux / Win\
\ / MacOS). 一键拥有你自己的跨平台 ChatGPT/Gemini 应用。"
org.opencontainers.image.licenses: "MIT"
org.opencontainers.image.revision: "cf635a5e6fe21b5ae4cfc4f17ec7f7f2f8aa053e"
org.opencontainers.image.source: "https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web"
org.opencontainers.image.title: "ChatGPT-Next-Web"
org.opencontainers.image.url: "https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web"
org.opencontainers.image.version: "v2.12.3"
logging:
driver: "json-file"
options: {}
networks:
- "freeaskinternet_default"
ports:
- "3030:3000/tcp"
restart: "always"
working_dir: "/app"
freeaskinternet-freeaskinternet-ui-1:
container_name: "freeaskinternet-freeaskinternet-ui-1"
entrypoint:
- "/bin/sh"
- "/data/generate-config.sh"
environment:
- "BACKEND_HOST=backend:8000"
- "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- "NGINX_VERSION=1.25.4"
- "PKG_RELEASE=1"
- "NJS_VERSION=0.8.3"
hostname: "9f1f027ddc20"
image: "docker.io/nashsu/free_ask_internet_ui:latest"
ipc: "private"
labels:
com.docker.compose.config-hash: "65a0a9b2dd098c91d00b45b0faedfdc18643c654a04420912e1f72223dfbf066"
com.docker.compose.container-number: "1"
com.docker.compose.depends_on: "backend:service_started:false"
com.docker.compose.image: "sha256:01d7402232616e6c6ebc5ca7804cc7543616debe6193b1f105ae7fae8e45a5fa"
com.docker.compose.oneoff: "False"
com.docker.compose.project: "freeaskinternet"
com.docker.compose.project.config_files: "/srv/Files/FreeAskInternet/docker-compose.yaml"
com.docker.compose.project.working_dir: "/srv/Files/FreeAskInternet"
com.docker.compose.service: "freeaskinternet-ui"
com.docker.compose.version: "2.27.0"
maintainer: "NGINX Docker Maintainers <docker-maint@nginx.com>"
logging:
driver: "json-file"
options: {}
networks:
- "freeaskinternet_default"
ports:
- "3000:80/tcp"
restart: "always"
working_dir: "/data"
freeaskinternet-llm-freegpt35-1:
command:
- "node"
- "app.js"
container_name: "freeaskinternet-llm-freegpt35-1"
entrypoint:
- "docker-entrypoint.sh"
environment:
- "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- "NODE_VERSION=21.7.3"
- "YARN_VERSION=1.22.19"
expose:
- "3040/tcp"
hostname: "6c4928cf1b1c"
image: "missuo/freegpt35:latest"
ipc: "private"
labels:
com.docker.compose.config-hash: "2e9af5a824aefce8a20b83f617ef893932790f93b878e46fae9f4997e63b8b5c"
com.docker.compose.container-number: "1"
com.docker.compose.depends_on: ""
com.docker.compose.image: "sha256:c75d531daf82f0b2b1a9b2e782dfb30465c39c7fe54c6afd616a3e39d2cb7d30"
com.docker.compose.oneoff: "False"
com.docker.compose.project: "freeaskinternet"
com.docker.compose.project.config_files: "/srv/Files/FreeAskInternet/docker-compose.yaml"
com.docker.compose.project.working_dir: "/srv/Files/FreeAskInternet"
com.docker.compose.service: "llm-freegpt35"
com.docker.compose.version: "2.27.0"
org.opencontainers.image.created: "2024-04-21T05:57:41.050Z"
org.opencontainers.image.description: "Utilize the unlimited free GPT-3.5-Turbo API service provided\
\ by the login-free ChatGPT Web."
org.opencontainers.image.licenses: "AGPL-3.0"
org.opencontainers.image.revision: "b4c62270753d648aec9b56194f03d04425371b64"
org.opencontainers.image.source: "https://github.com/missuo/FreeGPT35"
org.opencontainers.image.title: "FreeGPT35"
org.opencontainers.image.url: "https://github.com/missuo/FreeGPT35"
org.opencontainers.image.version: "v1.0.3"
logging:
driver: "json-file"
options: {}
networks:
- "freeaskinternet_default"
restart: "always"
working_dir: "/usr/src/app"
freeaskinternet-llm-glm4-1:
command:
- "npm"
- "start"
container_name: "freeaskinternet-llm-glm4-1"
entrypoint:
- "docker-entrypoint.sh"
environment:
- "TZ=Asia/Shanghai"
- "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- "NODE_VERSION=20.12.2"
- "YARN_VERSION=1.22.19"
expose:
- "8000/tcp"
hostname: "671d6b06305b"
image: "vinlic/glm-free-api:latest"
ipc: "private"
labels:
com.docker.compose.config-hash: "c7da6e379caf5847357ed8a50ccebfd99520f4ab74da202981bf805eb601aaa6"
com.docker.compose.container-number: "1"
com.docker.compose.depends_on: ""
com.docker.compose.image: "sha256:25297b723d80f324fe5fe2f575ac77dc99b554f19e1e99aac04e04f331cf3152"
com.docker.compose.oneoff: "False"
com.docker.compose.project: "freeaskinternet"
com.docker.compose.project.config_files: "/srv/Files/FreeAskInternet/docker-compose.yaml"
com.docker.compose.project.working_dir: "/srv/Files/FreeAskInternet"
com.docker.compose.service: "llm-glm4"
com.docker.compose.version: "2.27.0"
logging:
driver: "json-file"
options: {}
networks:
- "freeaskinternet_default"
restart: "always"
working_dir: "/app"
freeaskinternet-llm-kimi-1:
command:
- "npm"
- "start"
container_name: "freeaskinternet-llm-kimi-1"
entrypoint:
- "docker-entrypoint.sh"
environment:
- "TZ=Asia/Shanghai"
- "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- "NODE_VERSION=20.12.2"
- "YARN_VERSION=1.22.19"
expose:
- "8000/tcp"
hostname: "c2b7a29ac31b"
image: "vinlic/kimi-free-api:latest"
ipc: "private"
labels:
com.docker.compose.config-hash: "a323333684f35efaab9c9a2d890c77dd6b94bdfde91a7ba4f21712eba2b93d2d"
com.docker.compose.container-number: "1"
com.docker.compose.depends_on: ""
com.docker.compose.image: "sha256:98ff6a7e693d2d864c46435394a1c259403f0a35d7de1ad4e7d3f01257a93575"
com.docker.compose.oneoff: "False"
com.docker.compose.project: "freeaskinternet"
com.docker.compose.project.config_files: "/srv/Files/FreeAskInternet/docker-compose.yaml"
com.docker.compose.project.working_dir: "/srv/Files/FreeAskInternet"
com.docker.compose.service: "llm-kimi"
com.docker.compose.version: "2.27.0"
logging:
driver: "json-file"
options: {}
networks:
- "freeaskinternet_default"
restart: "always"
working_dir: "/app"
freeaskinternet-llm-qwen-1:
command:
- "npm"
- "start"
container_name: "freeaskinternet-llm-qwen-1"
entrypoint:
- "docker-entrypoint.sh"
environment:
- "TZ=Asia/Shanghai"
- "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- "NODE_VERSION=20.13.1"
- "YARN_VERSION=1.22.19"
expose:
- "8000/tcp"
hostname: "134e3a7697e8"
image: "vinlic/qwen-free-api:latest"
ipc: "private"
labels:
com.docker.compose.config-hash: "6bf517a5d6f525418f968c76ee2a308ba3dfabb7e3f6ce22a8544848befde6ee"
com.docker.compose.container-number: "1"
com.docker.compose.depends_on: ""
com.docker.compose.image: "sha256:1dc8a3918999b6f37bac7199081e413e89907c741e52c4445b4f837b1988be55"
com.docker.compose.oneoff: "False"
com.docker.compose.project: "freeaskinternet"
com.docker.compose.project.config_files: "/srv/Files/FreeAskInternet/docker-compose.yaml"
com.docker.compose.project.working_dir: "/srv/Files/FreeAskInternet"
com.docker.compose.service: "llm-qwen"
com.docker.compose.version: "2.27.0"
logging:
driver: "json-file"
options: {}
networks:
- "freeaskinternet_default"
restart: "always"
working_dir: "/app"
freeaskinternet-searxng-1:
cap_drop:
- "ALL"
container_name: "freeaskinternet-searxng-1"
entrypoint:
- "/sbin/tini"
- "--"
- "/usr/local/searxng/dockerfiles/docker-entrypoint.sh"
environment:
- "SEARXNG_BASE_URL=https://localhost/"
- "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- "INSTANCE_NAME=searxng"
- "AUTOCOMPLETE="
- "BASE_URL="
- "MORTY_KEY="
- "MORTY_URL="
- "SEARXNG_SETTINGS_PATH=/etc/searxng/settings.yml"
- "UWSGI_SETTINGS_PATH=/etc/searxng/uwsgi.ini"
- "UWSGI_WORKERS=%k"
- "UWSGI_THREADS=4"
expose:
- "8080/tcp"
hostname: "57bd913a80a3"
image: "docker.io/searxng/searxng:latest"
ipc: "private"
labels:
com.docker.compose.config-hash: "0d074aae5f883d0f2b78373c201d847e610d78f3fe27f2d7f4f7da9bc460581b"
com.docker.compose.container-number: "1"
com.docker.compose.depends_on: ""
com.docker.compose.image: "sha256:253fcf66aef5e3654f1fc3ca986853301e91db905eb31d7e9ac658f871b686da"
com.docker.compose.oneoff: "False"
com.docker.compose.project: "freeaskinternet"
com.docker.compose.project.config_files: "/srv/Files/FreeAskInternet/docker-compose.yaml"
com.docker.compose.project.working_dir: "/srv/Files/FreeAskInternet"
com.docker.compose.service: "searxng"
com.docker.compose.version: "2.27.0"
description: "A privacy-respecting, hackable metasearch engine."
maintainer: "searxng <https://github.com/searxng/searxng>"
org.label-schema.build-date: "2024-05-16T05:34:24Z"
org.label-schema.name: "searxng"
org.label-schema.schema-version: "1.0"
org.label-schema.url: "https://github.com/searxng/searxng"
org.label-schema.usage: "https://github.com/searxng/searxng-docker"
org.label-schema.vcs-ref: "2f2d93b292a62c0d78187f3cac0cda7599efc066"
org.label-schema.vcs-url: "https://github.com/searxng/searxng"
org.label-schema.version: "2024.5.16+2f2d93b29"
org.opencontainers.image.created: "2024-05-16T05:34:24Z"
org.opencontainers.image.documentation: "https://github.com/searxng/searxng-docker"
org.opencontainers.image.revision: "2f2d93b292a62c0d78187f3cac0cda7599efc066"
org.opencontainers.image.source: "https://github.com/searxng/searxng"
org.opencontainers.image.title: "searxng"
org.opencontainers.image.url: "https://github.com/searxng/searxng"
org.opencontainers.image.version: "2024.5.16-2f2d93b29"
version: "2024.5.16+2f2d93b29"
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "1m"
networks:
- "freeaskinternet_default"
restart: "always"
volumes:
- "/srv/Files/FreeAskInternet/searxng:/etc/searxng"
working_dir: "/usr/local/searxng"
version: "3.6"
No Comments