llm, add section comments, ensure ollama allows Codium workflows with concurrency and parallel.
This commit is contained in:
@@ -26,6 +26,8 @@
|
||||
- name: Workstation | Linux | Software | LLMs
|
||||
block:
|
||||
|
||||
# Facts - Start #
|
||||
|
||||
- name: Workstation | Linux | Software | LLMs | Facts | Provisioned
|
||||
ansible.builtin.debug:
|
||||
var: "{{ item }}"
|
||||
@@ -47,10 +49,12 @@
|
||||
qwen_code: qwen-code
|
||||
dummy_service: 'cronie'
|
||||
dummy_website: 'https://hyperling.com'
|
||||
# Good to keep low to prevent swap usage.
|
||||
llm_concurrency: "{{ (ansible_memtotal_mb / 64000) | round(0, method='ceil') | int }}"
|
||||
# Good to keep low to prevent swap usage. Going to have a minimum of 3
|
||||
# though, one for Cline, two for Continue (Agent + Autocomplete).
|
||||
llm_concurrency: "{{ [(ansible_memtotal_mb / 32000) | round(0, method='ceil'), 3] | max | int }}"
|
||||
# Allow having multiple chats open without them just waiting each other.
|
||||
llm_parallel: "{{ (ansible_processor_vcpus / 8) | round(0, method='ceil') | int }}"
|
||||
# Also setting this to a minimum of 3 for using Codium with extensions.
|
||||
llm_parallel: "{{ [(ansible_processor_vcpus / 2) | round(0, method='ceil'), 3] | max | int }}"
|
||||
# Most LLMs take a coefficient of about 1.2 to 1.5 of their file size in
|
||||
# RAM, which is usually less than guessing a usage of weight*1000.
|
||||
# Example:
|
||||
@@ -164,6 +168,8 @@
|
||||
- llm_installs
|
||||
- llm_removals
|
||||
|
||||
# Facts - End #
|
||||
|
||||
- name: Workstation | Linux | Software | LLMs | Packages | Install
|
||||
ansible.builtin.package:
|
||||
name:
|
||||
@@ -176,6 +182,8 @@
|
||||
- name: Workstation | Linux | Software | LLMs | runit
|
||||
block:
|
||||
|
||||
# Ollama - Start #
|
||||
|
||||
- name: Workstation | Linux | Software | LLMs | runit | ollama | Dir | Run
|
||||
ansible.builtin.file:
|
||||
name: "{{ ollama_runit_dir }}"
|
||||
@@ -250,6 +258,10 @@
|
||||
owner: "{{ user }}"
|
||||
mode: "0755"
|
||||
|
||||
# Ollama - End #
|
||||
|
||||
# Zeroclaw - Start #
|
||||
|
||||
- name: Workstation | Linux | Software | LLMs | runit | zeroclaw | Dir | Run
|
||||
ansible.builtin.file:
|
||||
name: "{{ zeroclaw_runit_dir }}"
|
||||
@@ -300,6 +312,9 @@
|
||||
dateformat %Y-%m-%d_%H-%M-%S # each run gets its own file.
|
||||
mode: "0755"
|
||||
|
||||
# Zeroclaw - End #
|
||||
|
||||
# Open WebUI - Start #
|
||||
|
||||
- name: Workstation | Linux | Software | LLMs | runit | open-webui | Packages
|
||||
ansible.builtin.package:
|
||||
@@ -407,8 +422,12 @@
|
||||
dateformat %Y-%m-%d_%H-%M-%S # each run gets its own file.
|
||||
mode: "0755"
|
||||
|
||||
# Open WebUI - End #
|
||||
|
||||
when: ansible_service_mgr == "runit"
|
||||
|
||||
# Services - Start #
|
||||
|
||||
- name: Workstation | Linux | Software | LLMs | Services | Enable
|
||||
ansible.builtin.service:
|
||||
name: "{{ item.name }}"
|
||||
@@ -446,40 +465,9 @@
|
||||
- "{{ 'http://127.0.0.1:3000/health' if open_webui_enabled else dummy_website }}"
|
||||
ignore_errors: true
|
||||
|
||||
#- name: Workstation | Linux | Software | LLMs | Config | zeroclaw | Root
|
||||
# ansible.builtin.blockinfile:
|
||||
# path: "{{ user_user.home }}/.zeroclaw/config.toml"
|
||||
# marker: "# {mark} ANSIBLE MANAGED BLOCK | zeroclaw | Defaults"
|
||||
# insertbefore: '(?m)^schema_version'
|
||||
# block: |
|
||||
# default_provider = "ollama"
|
||||
# default_model = "qwen3.5:4b"
|
||||
# provider_timeout_secs = 3600
|
||||
# state: present
|
||||
# create: false
|
||||
# backup: true
|
||||
|
||||
#- name: Workstation | Linux | Software | LLMs | Config | zeroclaw | Channels | header
|
||||
# ansible.builtin.lineinfile:
|
||||
# path: "{{ user_user.home }}/.zeroclaw/config.toml"
|
||||
# insertbefore: '(?m)^[channels]'
|
||||
# block: |
|
||||
# message_timeout_secs = 3600
|
||||
# state: present
|
||||
# create: false
|
||||
# backup: true
|
||||
|
||||
#- name: Workstation | Linux | Software | LLMs | Config | zeroclaw | Channels
|
||||
# ansible.builtin.blockinfile:
|
||||
# path: "{{ user_user.home }}/.zeroclaw/config.toml"
|
||||
# marker: "# {mark} ANSIBLE MANAGED BLOCK | zeroclaw | Channels"
|
||||
# insertbefore: '(?m)^[channels]'
|
||||
# block: |
|
||||
# message_timeout_secs = 3600
|
||||
# state: present
|
||||
# create: false
|
||||
# backup: true
|
||||
# Services - End #
|
||||
|
||||
# Models - Start #
|
||||
|
||||
- name: Workstation | Linux | Software | LLMs | Models | ollama | User Shell Functions
|
||||
ansible.builtin.blockinfile:
|
||||
@@ -655,4 +643,6 @@
|
||||
mode: "0644"
|
||||
when: codium_config
|
||||
|
||||
# Models - End #
|
||||
|
||||
when: ansible_pkg_mgr == "pacman"
|
||||
|
||||
Reference in New Issue
Block a user