From 629efa618a4d9366148ad67ff09cc0184d22bc92 Mon Sep 17 00:00:00 2001 From: Buba Date: Sat, 19 Jul 2025 12:40:47 +0000 Subject: [PATCH] Update AI and VM documentation --- config-example/docker/myhost/.env | 6 ++++ docker/ai/litellm.yaml | 1 + docker/ai/litellm/config.yaml | 27 ++++++++++++++---- docs/ai/prompts.md | 46 +++++++++++++++++++++++++++++++ proxmox/create-openwrt-vm.sh | 2 ++ proxmox/windows.md | 10 +++++++ 6 files changed, 87 insertions(+), 5 deletions(-) diff --git a/config-example/docker/myhost/.env b/config-example/docker/myhost/.env index 78f3cb8f..57ba36e3 100644 --- a/config-example/docker/myhost/.env +++ b/config-example/docker/myhost/.env @@ -88,5 +88,11 @@ OBSIDIAN_LIVESYNC_PASSPHRASE="use-some-very-secure-value-here" CLOUDFLARE_DNS_API_TOKEN="use-some-very-secure-value-here" CLOUDFLARE_TUNNEL_TOKEN="use-some-very-secure-value-here" +# https://console.anthropic.com/settings/keys ANTHROPIC_API_KEY="use-some-very-secure-value-here" + +# https://openrouter.ai/settings/keys OPENROUTER_API_KEY="use-some-very-secure-value-here" + +# https://aistudio.google.com/apikey +GEMINI_API_KEY="use-some-very-secure-value-here" diff --git a/docker/ai/litellm.yaml b/docker/ai/litellm.yaml index 994b2e4d..9a1a5d36 100644 --- a/docker/ai/litellm.yaml +++ b/docker/ai/litellm.yaml @@ -18,6 +18,7 @@ services: environment: ANTHROPIC_API_KEY: ${ANTHROPIC_API_KEY:-""} OPENROUTER_API_KEY: ${OPENROUTER_API_KEY:-""} + GEMINI_API_KEY: ${GEMINI_API_KEY:-""} LOCAL_OLLAMA_API_BASE: https://ollama.${MYDOMAIN} REMOTE_OLLAMA_API_BASE: http://localhost:11444 labels: diff --git a/docker/ai/litellm/config.yaml b/docker/ai/litellm/config.yaml index f8455109..02d88882 100644 --- a/docker/ai/litellm/config.yaml +++ b/docker/ai/litellm/config.yaml @@ -13,8 +13,11 @@ --- model_list: - # --- Via Anthropic API - # --- https://docs.anthropic.com/en/docs/about-claude/models/overview + # --- Via Anthropic + # LiteLLM provider: https://docs.litellm.ai/docs/providers/anthropic + # Models: https://docs.anthropic.com/en/docs/about-claude/models/overview + # Create API key: https://console.anthropic.com/settings/keys + # Buy credits: https://console.anthropic.com/settings/billing - model_name: claude-3-5-sonnet # RECEIVED MODEL NAME litellm_params: # All params accepted by litellm.completion() - https://docs.litellm.ai/docs/completion/input @@ -36,8 +39,21 @@ model_list: model: anthropic/claude-sonnet-4-0 api_key: "os.environ/ANTHROPIC_API_KEY" + # --- Via Google + # LiteLLM provider: https://docs.litellm.ai/docs/providers/gemini + # Models: https://ai.google.dev/gemini-api/docs/models + # Create API key: https://aistudio.google.com/apikey + # Buy credits: https://aistudio.google.com/apikey -> "Set up billing" + - model_name: gemini-2.5-flash + litellm_params: + model: gemini/gemini-2.5-flash + api_key: "os.environ/GEMINI_API_KEY" + # --- Via Openrouter - # --- https://openrouter.ai/models + # LiteLLM provider: https://docs.litellm.ai/docs/providers/openrouter + # Models: https://openrouter.ai/models + # Create API Key: https://openrouter.ai/settings/keys + # Buy credits: https://openrouter.ai/settings/credits # https://openrouter.ai/openai/openai/gpt-4o - model_name: gpt-4o @@ -75,8 +91,9 @@ model_list: model: openrouter/deepseek/deepseek-r1 api_key: "os.environ/OPENROUTER_API_KEY" - # --- Local models - # --- https://ollama.com/search + # --- Local models (Ollama) + # LiteLLM provider: https://docs.litellm.ai/docs/providers/ollama#using-ollama-apichat + # Models: https://ollama.com/search # Local model - Phi 3.5 - model_name: ollama-local-phi diff --git a/docs/ai/prompts.md b/docs/ai/prompts.md index 7f1bffee..5aa8febe 100644 --- a/docs/ai/prompts.md +++ b/docs/ai/prompts.md @@ -85,3 +85,49 @@ Use the "prompt of all prompts" and outsource the prompt generation to your LLM 3. We will continue this iterative process with me providing additional information to you and you updating the prompt in the Revised prompt section until I say we’re done.” Source: https://www.reddit.com/r/LocalLLaMA/s/2XBchgj4aK + +## Prompt improvement #1 + +Let’s work together to get the best possible responses from a prompt that I give you. From now on we will interact in the following sequence: +1. My initial prompt: [I will give you an initial prompt] +2. You will request more details from me in the following format: [Request 3-5 specific details about my original prompt in order to fully understand what I want from you. Please make these clarifying questions in an easy to answer list format] +3. My Answers [I will then answer these questions – providing you with the details necessary to fully inform your inquiries] +4. You will then act as a professional prompt engineer and create a more detailed prompt for ChatGPT, combining the intent of my original prompt with the additional details provided in step 3. Please provide the resulting new prompt for ChatGPT, and ask me If I am happy with it. +5. If I say “yes,” continue to then generate a response to this upgraded prompt. +6. If I say “no,” ask me which details about this prompt I am not happy with. +7. I will then provide the additional information required +8. Generate another prompt, similar to step 4, but taking into account the alterations I asked for in step 7. + +Repeat step 6 – 8 until I am happy with the prompt that you generate. + +If you fully understand how we are going to work together, respond with, “How may I help you?” + +Source: https://lawtonsolutions.com/How-To-AI/ + +## Prompt improvement #2 + +"You are an expert prompt engineer specializing in creating prompts for AI language models, particularly Claude 3.5 Sonnet. +Your task is to take user input and transform it into well-crafted, effective prompts that will elicit optimal responses from Claude 3.5 Sonnet. +When given input from a user, follow these steps: + +1. Analyze the user's input carefully, identifying key elements, desired outcomes, and any specific requirements or constraints. +2. Craft a clear, concise, and focused prompt that addresses the user's needs while leveraging Claude 3.5 Sonnet's capabilities. +3. Ensure the prompt is specific enough to guide Claude 3.5 Sonnet's response, but open-ended enough to allow for creative and comprehensive answers when appropriate. +4. Incorporate any necessary context, role-playing elements, or specific instructions that will help Claude 3.5 Sonnet understand and execute the task effectively. +5. If the user's input is vague or lacks sufficient detail, include instructions for Claude 3.5 Sonnet to ask clarifying questions or provide options to the user. +6. Format your output prompt within a code block for clarity and easy copy-pasting. +7. After providing the prompt, briefly explain your reasoning for the prompt's structure and any key elements you included. + +Source (and other versions): https://www.reddit.com/r/ClaudeAI/comments/1gds696/the_only_prompt_you_need/ + +## Increasing complexity + +"Explain it with gradually increasing complexity" + +I just thought of this prompt after I noticed I was constantly asking for more in-depth or more higher-level explanations. On many (complex) topics, you just first want the higher level overview, and then hear more about the details, nuances and novelties. + +Haven't got enough detail yet? Add a simple "continue" + +I would love to hear some useful variations on this prompt! + +Source: https://www.reddit.com/r/LocalLLaMA/comments/1dp378t/very_powerful_prompt_explain_it_with_gradually/ diff --git a/proxmox/create-openwrt-vm.sh b/proxmox/create-openwrt-vm.sh index 9ab0ba41..1294e977 100755 --- a/proxmox/create-openwrt-vm.sh +++ b/proxmox/create-openwrt-vm.sh @@ -1,6 +1,8 @@ #!/usr/bin/env bash set -euo pipefail +# Deploy from adminhost: `ssh root@proxmox "bash -s" -- < create-openwrt-vm.sh` + # OpenWRT version to install # Check latest version at: https://downloads.openwrt.org/releases/ readonly OPENWRT_VERSION=24.10.1 diff --git a/proxmox/windows.md b/proxmox/windows.md index 124f51a4..b058ea87 100644 --- a/proxmox/windows.md +++ b/proxmox/windows.md @@ -19,3 +19,13 @@ **Installation:** Microsoft Store -> [App Installer](https://www.microsoft.com/p/app-installer/9nblggh4nns1) package. + +#### UniGetUI + +> The Graphical Interface for your package managers. Could be terribly described as a package manager manager to manage your package managers + +- [Homepage](https://www.marticliment.com/unigetui/) +- [GitHub project](https://github.com/marticliment/UniGetUI) +- Microsoft Store -> [UniGetUI](https://apps.microsoft.com/detail/xpfftq032ptphf) + +> The main goal of this project is to create an intuitive GUI for the most common CLI package managers for Windows 10 and 11, such as WinGet, Scoop, Chocolatey, PIP, NPM, .NET Tool, PowerShell Gallery and more. With this app, you can easily download, install, update, and uninstall any software published on the supported package managers — and much more!