Community of Practice
Welche Modelle soll ich nehmen?
Wir wechseln mal den Bildschirm…
ellmer1library(ellmer)
2ref_llm_url <-"http://127.0.0.1:1234"
3models_lmstudio(
base_url = ref_llm_url
)
4ref_model <-"phi-4-mini-instruct"
5ref_params <- params(
temperature = 0,
seed = 12345,
)
6chat <- chat_lmstudio(
system_prompt = sys_prompt,
base_url = ref_llm_url,
model = ref_model,
params = ref_params,
)ellmer laden, stellt Funktionen für den Zugriff auf LMStudio bereit
localhost auf Port 1234, ist konfigurierbar
ellmer::models_lmstudio() können verfügbare Modelle gelistet werden
ellmer::params() können Modellparameter festgelegt werden, unterscheidet sich je nach Modell; temperature auf 0 für weniger Zufall und deterministischeres Verhalten, fester seed für bessere Reproduzierbarkeit
ellmer::chat_lmstudio() wird ein neuer Chat gestartet
.Renviron
.Renviron bearbeiten: usethis::edit_r_environ()API_key=a1s2d3f4g5h6j7k8l9Sys.getenv("API_key")ellmer1library(ellmer)
2rem_llm_url <-"https://chat.kiconnect.nrw/api/v1"
3models_openai(
base_url = rem_llm_url,
credentials = function(){Sys.getenv("KICONNECTNRW_API_KEY")}
)
4rem_model <-"OpenAI OSS 120B"
5rem_params <- params(
temperature = 0
)
6chat <- chat_openai_compatible(
system_prompt = sys_prompt,
base_url = rem_llm_url,
model = rem_model,
params = rem_params,
credentials = function(){Sys.getenv("KICONNECTNRW_API_KEY")}
)ellmer laden, stellt Funktionen für den Zugriff auf LMStudio bereit
ellmer::models_openai() können verfügbare Modelle gelistet werden
ellmer::params() können Modellparameter festgelegt werden (ausprobieren!); OSS 120B unterstützt lediglich temperature
ellmer::chat_openai_compatible() wird ein neuer Chat gestartet; wichtig ist der Parameter credentials; hier wird über eine Funktion ein Eintrag aus .Renviron ausgelesen
sys_prompt <- "You are a GDPR compliance assistant. Your job is to analyze textual data, detect personal data (PII) as defined under GDPR and remove the personal data by replacing it with the appropriate placeholder from the list below.
Instructions:
- Carefully analyze each text
- Do not invent anything.
- Only return the text you were provided, nothing else.
- Do not add anything before or after the text.
- Do not alter the text.
- Use regular expressions, common data formats, semantic patterns, and field naming heuristics** to identify all types of PII.
- Detect names including nicknames and replace them with the placeholder [NAME]
- Detect addresses like street names, city/postal codes, replace them with the placeholder [LOCATION]
- Detect email addresses and replace them with placeholder [EMAIL]
- Detect phone numbers, including mobile and international formats, and replace them with [PHONE]
- Detect age specifications and time periods for exameple \`13 years` with [YEARRANGE]
- Detect URLs and website addresses and replace them with [URL]
- Detect IPs and IP ranges and cookie/session IDs with regular expressions and replace them with the placeholder [IP-ADDRESS]
- Recognize financial data such as \`credit-card\`, \`iban\`, \`bank-account\`, and \`vat-number\` from format and context, replace with placeholder [FINANCIAL]
- Do not change or alter anything else which you might consider PII.
"ellmer kapselt die API-Unterschiede, der Code ist damit gleich für selbst-gehostete oder externe Modelle.
chat()-Funktion pseudonymisiertStand: 06/2026
ellmer: Funktionen zur Verbindung und Arbeit mit verschiedenen LLMsragnar: Implementierung von Retrival-Augmented Generation (RAG) in Rmcptools: Implementierung des Model Context Protocols (MCP) in Rshinychat: bietet verschiedene Funktionen, um KI-Anwendungen mit Shiny umzusetzenquerychat: tabellarische Daten mit LLMs und SQL erschließen und analysierenvitals: LLMs und KI-Anwendungen evaluierenquallmer: KI-gestützte Analyse qualitativer DatenOhne Anspruch auf Vollständigkeit. Viele andere Pakete setzen auf Ollama (u.a. rtemis.llm, pairwise.llm) oder bieten keinen Mehrwert zu ellmer & Co. (bspw. llm.api, tidyllm).
Themen aus den letzten Treffen:
CoP KI: Lokale LLMs mit R nutzen