{"id":232,"date":"2025-07-14T21:20:40","date_gmt":"2025-07-14T19:20:40","guid":{"rendered":"https:\/\/tiwastech.com\/?p=232"},"modified":"2025-07-14T21:20:40","modified_gmt":"2025-07-14T19:20:40","slug":"genai-drevet-innovation-undgaa-faldgruber-og-forbliv-compliant","status":"publish","type":"post","link":"https:\/\/tiwastech.com\/en\/genai-drevet-innovation-undgaa-faldgruber-og-forbliv-compliant\/","title":{"rendered":"GenAI-powered innovation: Avoiding pitfalls and staying compliant"},"content":{"rendered":"\n<p>Generativ AI (GenAI) \u00e6ndrer m\u00e5den, virksomheder innoverer p\u00e5, fra automatisering af arbejdsgange til skabelse af nye produkter. Men det er ikke &#8220;full service driving&#8221;. Uden omhyggelig navigation kan det f\u00f8re til kostbare fejltagelser. I mit foredrag p\u00e5 et <a href=\"https:\/\/tecpoint.dk\" target=\"_blank\" rel=\"noopener\" title=\"\">Tecpoint.dk<\/a>-seminar den 22. maj 2025, afholdt hos <a href=\"https:\/\/www.linak.com\" target=\"_blank\" rel=\"noopener\" title=\"\">Linak<\/a>, en dansk aktuatorvirksomhed, delte jeg, hvordan virksomheder kan udnytte GenAI\u2019s potentiale, samtidig med at de undg\u00e5r faldgruber som hallucinationer, hvor modeller genererer falske oplysninger, og compliance-udfordringer. Denne artikel dykker ned i, hvordan man kan frig\u00f8re GenAI-drevet innovation p\u00e5 en ansvarlig m\u00e5de p\u00e5 tv\u00e6rs af industrier med et praktisk eksempel fra den virkelige verden.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Hvorfor GenAI er vigtig for innovation<\/h2>\n\n\n\n<p>GenAI, drevet af store sprogmodeller (LLM\u2019er) eller mindre, tilpassede modeller, kan transformere driften i detailhandel, finans, sundhedsv\u00e6senet, produktion og mange andre brancher. <a href=\"https:\/\/www.mckinsey.com\/capabilities\/quantumblack\/our-insights\/the-state-of-ai\" target=\"_blank\" rel=\"noopener\" title=\"\">McKinsey\u2019s rapport \u201cThe State of AI\u201d fra marts 2025<\/a> bem\u00e6rker, at 78 % af organisationer nu bruger AI i mindst \u00e9n forretningsfunktion, hvor GenAI skaber produktivitetsgevinster til en v\u00e6rdi af DKK 16,6\u201328,1 billioner \u00e5rligt. Men som jeg understregede hos Linak, kommer GenAI\u2019s styrke med udfordringer: hallucinationer, un\u00f8jagtige outputs og compliance-risici. At implementere og udnytte GenAI rigtigt betyder at balancere innovation med ansvarlighed.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Almindelige faldgruber og hvordan man undg\u00e5r dem<\/h2>\n\n\n\n<p>GenAI\u2019s st\u00f8rste udfordringer kan afspore projekter. Hallucinationer stammer fra st\u00f8jende tr\u00e6ningsdata eller upr\u00e6cise prompts. Compliance-problemer, is\u00e6r under GDPR og EU\u2019s AI-lov, opst\u00e5r, n\u00e5r f\u00f8lsomme data h\u00e5ndteres forkert. P\u00e5 Tecpoint.dk-seminaret skitserede jeg tre strategier til at im\u00f8dekomme disse udfordringer:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Prompt Engineering<\/strong>: Klare, kontekstrige prompts reducerer fejl. For eksempel sikrer det at specificere \u201cgener\u00e9r en teknisk specifikation baseret p\u00e5 verificerede Linak-brugermanualer\u201d n\u00f8jagtige outputs. Ressourcer som promptingguide.ai tilbyder praktiske tips til at mestre dette h\u00e5ndv\u00e6rk.<\/li>\n\n\n\n<li><strong>Retrieval-Augmented Generation (RAG)<\/strong>: RAG henter realtidsdata fra p\u00e5lidelige kilder og minimerer hallucinationer. Det er ideelt til compliance-f\u00f8lsomme applikationer, da det kan holde data lokalt.<\/li>\n\n\n\n<li><strong>Fine-Tuning<\/strong>: Tilpasning af modeller til specifikke opgaver forbedrer tone og n\u00f8jagtighed, men kr\u00e6ver gennemarbejdede datas\u00e6t (mindst 50\u2013100 inputs).<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Et eksempel fra det virkelige liv: Linak\u2019s lille sprogmodel<\/h2>\n\n\n\n<p>Hos Linak implementerede jeg en lille sprogmodel (SLM) for at hj\u00e6lpe med skabelsen af teknisk dokumentation. M\u00e5let var at hente brugermanualer og generere tekniske specifikationer, som user stories, til deres aktuatorprodukter. Ved hj\u00e6lp af RAG tilgik SLM\u2019en en Linak-produktmanual lokalt og undgik cloud-baseret behandling for at sikre compliance. Dette blev opn\u00e5et med et simpelt Python-script (se appendiks), der indl\u00e6ste manualindhold, tokeniserede brugerforesp\u00f8rgsler og genererede outputs, s\u00e5som user stories i formatet \u201c<em>As a [role], I want [action], so [purpose]<\/em>\u201d. Scriptet g\u00f8r det muligt for Linak at bruge gamle produktmanualer til at skabe nye specifikationer, samtidig med at f\u00f8lsomme data holdes sikre. Det viste ogs\u00e5, hvordan selv mindre GenAI-modeller kan drive effektivitet uden at risikere compliance. Denne metode kan adopteres af enhver industri.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Forbliv compliant i en reguleret verden<\/h2>\n\n\n\n<p>Compliance er ufravigelig, is\u00e6r i Europas st\u00e6rkt regulerede landskab. Som jeg fremh\u00e6vede p\u00e5 Tecpoint-seminaret, er lokale sprogmodeller en game-changer for compliance-bevidste virksomheder, da de giver kontrol over data uden at g\u00e5 p\u00e5 kompromis med innovation. For at tackle compliance-udfordringer er <a href=\"https:\/\/www.iso.org\/standard\/42001\" target=\"_blank\" rel=\"noopener\" title=\"\">ISO 42001<\/a> skabt som en ramme for implementering af etisk og compliant AI, med v\u00e6gt p\u00e5 dataintegritet, gennemsigtighed og regelm\u00e6ssige audits. Praktiske skridt omfatter anonymisering af data, dokumentation af modelbeslutninger og udf\u00f8relse af risikovurderinger. I EU er de overordnede regler at overveje den velkendte GDPR og<a href=\"https:\/\/eur-lex.europa.eu\/eli\/reg\/2024\/1689\/oj\/eng\"> EU AI Act<\/a>. EU\u2019s AI Act blev initieret i 2024 og vil v\u00e6re fuldt h\u00e5ndh\u00e6vet i 2026, hvor den vil p\u00e5l\u00e6gge b\u00f8der p\u00e5 op til DKK 261 millioner (\u20ac35 millioner) for manglende overholdelse, hvilket g\u00f8r proaktiv styring afg\u00f8rende.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Dine n\u00e6ste skridt<\/h2>\n\n\n\n<p>GenAI er ikke bare plug-and-play. Det er et v\u00e6rkt\u00f8j, der kr\u00e6ver strategi og tilsyn. Start med at eksperimentere med prompt engineering, udforsk RAG for sikker datah\u00e5ndtering, og overvej fine-tuning til specialiserede opgaver. Vigtigst af alt, indbyg compliance fra dag \u00e9t: kortl\u00e6g dataflows, prioriter sikkerhed og tr\u00e6n teams i AI-etik. Som jeg delte hos Linak, trives de virksomheder, der bruger GenAI, ikke kun ved at jagte innovation men ogs\u00e5 ved at bygge tillid.<\/p>\n\n\n\n<p><strong>References<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/eur-lex.europa.eu\/eli\/reg\/2024\/1689\/oj\/eng\" target=\"_blank\" rel=\"noopener\" title=\"\">European Commission. (2024). <em>The EU AI Act: Regulatory Framework<\/em>.<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.mckinsey.com\/capabilities\/quantumblack\/our-insights\/the-state-of-ai\" target=\"_blank\" rel=\"noopener\" title=\"\">McKinsey &amp; Company. (2025). <em>The State of AI: March 2025<\/em>.<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.iso.org\/standard\/42001\" target=\"_blank\" rel=\"noopener\" title=\"\">ISO. (2023). <em>ISO 42001: Artificial Intelligence Management System<\/em>.<\/a><\/li>\n<\/ul>\n\n\n\n<p><strong>Appendix:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import os\nfrom transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig \nimport torch\n\n# Load document text from file\ndocument_text_file = \"document_text.txt\"\nif not os.path.exists(document_text_file):\n    raise FileNotFoundError(f\"{document_text_file} not found.\")\nwith open(document_text_file, \"r\", encoding=\"utf-8\") as f:\n    context_text = f.read()\n\n# Load Gemma-2-2b-it model and tokenizer\n# The tokenizer converts text into a format that the model can understand\nmodel_checkpoint = \"google\/gemma-2-2b-it\"\ntokenizer = AutoTokenizer.from_pretrained(model_checkpoint, token=\"&#91;Register for Huggingface and get free token]\", use_fast=True)\n\n# Define quantization configuration\nquantization_config = BitsAndBytesConfig(\n    load_in_8bit=True\n)\n\n# Load the model with quantization\nmodel = AutoModelForCausalLM.from_pretrained(\n    model_checkpoint,\n    token=\"&#91;Register for Huggingface and get free token]\",\n    device_map=\"auto\",\n    quantization_config=quantization_config\n)\n\n# Interactive loop for user queries\nprint(\"Gemma-2-2b-it is ready. Ask your questions (type 'exit' to quit).\")\nprint(\"Example: 'How do you secure the mechanical construction?' or 'Generate a user story for software development.'\")\nwhile True:\n    user_question = input(\"> \")\n    if user_question.lower() == \"exit\":\n        break\n\n    # Construct the prompt using the specified format\n    input_text = (\n        f\"&#91;INST] You are a product owner working with a user manual for an actuator product. \"\n        f\"Here is the content from the manual:\\n\\n{context_text}\\n\\n\"\n        f\"User's input: {user_question}\\n\\n\"\n        f\"Answer precisely and use the manual as a basis. If you generate requirements (e.g., user stories), \"\n        f\"use the format: 'As &#91;role], I want &#91;action], so &#91;purpose].' &#91;\/INST]\"\n    )\n\n    # Tokenize the input by adding the input text and converting it to PyTorch tensors (multi-dimensional arrays)\n    # model.device moves the tensors to the same device as the model (CPU or GPU)\n    inputs = tokenizer(input_text, return_tensors=\"pt\").to(model.device)\n    input_tokens = inputs.input_ids.shape&#91;1]\n\n    # Set max_new_tokens to min(200, 8192 - input_tokens)\n    # 8192 tokens is approximately 32,768 characters (assuming 4 characters per token)\n    # 32,768 characters is about 13 pages of text (assuming 2,500 characters per page)\n    # ChatGPT-4.1 can handle around 1 million tokens (~1600 pages)\n    max_new_tokens = min(200, 8192 - input_tokens)\n    if max_new_tokens &lt;= 0:\n        print(\"Input is too long, cannot generate output.\")\n        continue\n\n    # Generate response\n    # torch.no_grad() is a context manager that disables gradient calculation, which reduces memory consumption\n    with torch.no_grad():\n        output_ids = model.generate(**inputs, max_new_tokens=max_new_tokens)\n\n    # Decode the generated tokens back to text and print the answer\n    generated_ids = output_ids&#91;0, input_tokens:]\n    answer = tokenizer.decode(generated_ids, skip_special_tokens=True).strip()\n    print(f\"Answer: {answer}\")<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Generativ AI (GenAI) \u00e6ndrer m\u00e5den, virksomheder innoverer p\u00e5, fra automatisering af arbejdsgange til skabelse af nye produkter. Men det er ikke &#8220;full service driving&#8221;. Uden omhyggelig navigation kan det f\u00f8re til kostbare fejltagelser. I mit foredrag p\u00e5 et Tecpoint.dk-seminar den 22. maj 2025, afholdt hos Linak, en dansk aktuatorvirksomhed, delte jeg, hvordan virksomheder kan udnytte [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":240,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[29],"tags":[30,31],"class_list":["post-232","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ai","tag-ai","tag-genai"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/tiwastech.com\/en\/wp-json\/wp\/v2\/posts\/232","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tiwastech.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tiwastech.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tiwastech.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tiwastech.com\/en\/wp-json\/wp\/v2\/comments?post=232"}],"version-history":[{"count":12,"href":"https:\/\/tiwastech.com\/en\/wp-json\/wp\/v2\/posts\/232\/revisions"}],"predecessor-version":[{"id":247,"href":"https:\/\/tiwastech.com\/en\/wp-json\/wp\/v2\/posts\/232\/revisions\/247"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tiwastech.com\/en\/wp-json\/wp\/v2\/media\/240"}],"wp:attachment":[{"href":"https:\/\/tiwastech.com\/en\/wp-json\/wp\/v2\/media?parent=232"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tiwastech.com\/en\/wp-json\/wp\/v2\/categories?post=232"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tiwastech.com\/en\/wp-json\/wp\/v2\/tags?post=232"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}