Det här är en rimlig laboratoriearkitektur när du har köpt ytterligare en DGX Spark: lokal inferens för en stor modell, automatisering som arbetar med verksamhetssystem och en körmiljö för agenter. Det är inte en färdig stack med leverantörsstöd.
Den variant som går att försvara är smalare. Du utvärderar fyra lager som måste kunna hållas åtskilda:
- Nätverk: två Spark-enheter som är sammankopplade för distribuerad inferens (NVIDIA:s klustringsdokumentation, handbok för att koppla samman två Spark-enheter).
- Experimentell modellserver: en OpenAI-kompatibel väg som användargemenskapen har byggt för DeepSeek-V4-Flash, eller DSpark-varianten med spekulativ avkodning, över båda noderna.
- Deterministisk automatisering: n8n för webhooks, schemalagda jobb, skrivningar till CRM, e-post och Slack, validering och mänskliga godkännandesteg.
- Körmiljö för bedömningar: Hermes Agent för triage, utkast, undersökningar och verktygsanvändning som kräver minne och resonemang i flera steg (officiell dokumentation för API-servern, officiell dokumentation för webhooks).
Kopplingen mellan n8n och Hermes i den här artikeln är ett illustrativt integrationsmönster, inte en färdig lösning som någon av leverantörerna dokumenterar eller stöder. När ett arbetsflöde behöver agentens resultat tillbaka i n8n ska du använda Hermes API-server med bearer-autentisering. Hermes HMAC-webhookadapter är en separat yta för inkommande händelser: den startar en agent och levererar resultatet till ett konfigurerat mål, i stället för att definiera ett generellt synkront svarskontrakt för n8n.
Ett valfritt femte lager är OpenClaw för chattkanaler som Telegram och Slack, eventuellt startat genom NemoClaw och OpenShell när du vill ha sandlådepolicyer. NemoClaw är för närvarande ett alfaprojekt i tidig förhandsversion, inte produktionsklar programvara. Inget av lagren krävs för de tre arbetsflödena nedan.
Låt inte en agentslinga automatiskt skicka kundmejl, lämna in juridiska dokument, ändra produktionsinfrastruktur eller genomföra betalningar. Skicka oåterkalleliga åtgärder genom ett mänskligt godkännandesteg tills du har loggar, idempotens och tillräckligt många granskade körningar för att kunna lita på flödet.
Vad DeepSeek-V4-Flash ändrar på två Spark-enheter
DeepSeek-V4-Flash är en Mixture-of-Experts-modell med 284B parametrar totalt, varav 13B aktiveras, och ett kontextfönster på 1M token enligt det officiella modellkortet. Instruktionsmodellens vikter använder FP4 för dirigerade experter och FP8 för övriga delar. Kombinationen är relevant på Spark eftersom:
- Antalet aktiverade parametrar håller avkodningskostnaden hanterbar jämfört med täta modeller av motsvarande total storlek.
- Lång kontext är användbar för agentarbetslaster som utdrag ur kodförråd, ärendehistorik och policypaket, förutsatt att du hämtar rätt material och fortfarande verifierar påståendena.
- DSpark-modell-checkpointen är samma modell med en modul för spekulativ avkodning. Exemplet i dess officiella modellkort använder en GB300-nod med fyra GPU:er, inte två Spark-enheter. Rapporten från vLLM-användargemenskapen nedan använder modell-checkpointen utan DSpark på två GB10-system.
Behandla publicerade resultat för token per sekund och maximal kontext som receptspecifika rapporter, inte garantier för din kabel, drivrutin, container eller inställning för samtidighet. De officiella modellkorten dokumenterar inte en validerad driftsättning med två Spark-enheter. DSpark-exemplet använder en GB300-nod med fyra GPU:er. Vid kontrollen 2026-08-10 rapporterade det öppna vLLM-ärendet #40969 en hängning efter den sjätte eller sjunde förfrågan på två GB10-system i ett specifikt, låst vLLM-bygge med CUDA-grafer av typen FULL_AND_PIECEWISE, segmenterad förfyllning, Marlin MoE, FP8-KV-cache och TP=2. Det är belägg för den konfigurationen, inte för varje driftsättning. Använd bara den här vägen som ett versionslåst experiment med en reservmodell.
Referensarkitektur
┌─────────────────────────────────┐
Formulär/CRM/Git ─►│ n8n (validera, förgrena, HITL) │─► Slack / CRM / e-post
└────────────────┬────────────────┘
│ HTTPS + bearer-autentisering
▼
┌─────────────────────────────────┐
│ Hermes (minne, verktyg, utkast) │
└────────────────┬────────────────┘
│ OpenAI-kompatibelt /v1
▼
┌───────────────────────────────────────────────────────────┐
│ Spark A ◄── QSFP / RoCE ──► Spark B │
│ experimentell modellväg från användargemenskapen med TP=2 │
└───────────────────────────────────────────────────────────┘
Designregler som gör lösningen mer än en demonstration:
| Lager | Äger | Får inte äga |
|---|---|---|
| n8n | Utlösare, datascheman, omförsök, SaaS-skrivningar, godkännanden | Obegränsad åtkomst till kommandoskal på LAN |
| Hermes | Klassificering, utkast, efterforskning, verktygsanvändning | Produktionsåtgärder utan synligt godkännande |
| Modellserver | Indatatoken och utdatatoken | Åtkomstuppgifter för verksamhetssystem |
| OpenClaw (valfritt) | Chattkanaler för människor och tillåtelselistor | Rootåtkomst till värdsystemet utan sandlåda |
Rikta Hermes och eventuella AI-noder i n8n mot klusterslutpunkten som en vanlig OpenAI-kompatibel bas-URL. Behåll API-nycklar på LAN eller VPN och exponera inte vLLM-porten mot internet.
Checklista för uppstart, där ordningen spelar roll
1. Nätverket mellan två Spark-enheter
Följ NVIDIA:s guide, inte inofficiella råd:
- Samma användarnamn på båda noderna.
- En QSFP-kabel mellan matchande ConnectX-7-portar. NVIDIAs handbok anger att full bandbredd kan nås med en kabel och dokumenterar ingen ökning av genomströmningen från en andra kabel mellan samma två system.
- Dedikerad L3-adressering och netplan för höghastighetsvägen; behåll 10 GbE eller Wi-Fi för administration och internet.
- Lösenordsfri SSH mellan noder.
- Bekräfta att gränssnitten visar Up (
ibdev2netdev/ NVIDIA-steg) innan du felsöker NCCL.
NVIDIA Syncs Cluster Assistant kan konfigurera ConnectX-7 och SSH för stödda topologier; den installerar inte din inferensstack åt dig.
2. Modellserver
- Välj ett namngivet recept från användargemenskapen som låser container eller programvarubygge, CUDA-stack, vLLM-korrigeringar, startkommandon och kända begränsningar. Sätt inte ihop ett produktionskommando av fragment från den här artikeln.
- Verifiera att receptet uttryckligen stöder dina två GB10-noder och den exakta modell-checkpointen
DeepSeek-V4-Flash. Tensorparallell storlek 2 är en hypotes att testa här, inte ett officiellt löfte om stöd. - Exponera
/v1/modelsoch/v1/chat/completionsendast på ett privat gränssnitt. - Registrera den maximala kontext du faktiskt konfigurerar, det maximala antalet samtidiga sekvenser, KV-datatypen och om spekulativ avkodning är aktiverad.
- Den aktuella Hermes-dokumentationen kräver att modellens konfigurerade kontext är minst 64K token. En serverprofil med mindre kontext belägger inte kompatibilitet med nuvarande Hermes. Konfigurera och uthållighetstesta därför en profil på minst 64K innan du ansluter Hermes.
Testa korta, långa, upprepade och samtidiga prompter innan du kopplar in agenter. Det rapporterade felet med två Spark-enheter visar sig efter flera förfrågningar, så ett enda ”hello” bevisar nästan ingenting. Vägen är inte produktionsklar förrän ett versionslåst uthållighetstest klaras på din hårdvara.
3. Hermes
- Installera från den officiella snabbstarten för Hermes och konfigurera modellleverantören med den privata OpenAI-kompatibla bas-URL:en.
- Aktivera API-servern för arbetsflödena med frågor och svar nedan, ange en stark
API_SERVER_KEY, håll servern på ett privat gränssnitt och verifieraGET /healthpå den dokumenterade standardporten 8642. Använd/v1/responsesför ett direkt resultat eller/v1/runsmed statuskontroller för ett långvarigt jobb. - Om användningsfallet tar emot händelser och levererar resultatet någon annanstans ska du använda den separata webhookadaptern: namngivna rutter, tidsstämplad V2 HMAC, förfrågnings-ID:n för deduplicering och standardporten 8644. Missta inte dess kvittens för agentens utdata.
- Neka bred åtkomst till kommandoskalet tills du har en tillåtelselista och en människa som granskar loggarna. API-nyckeln ger åtkomst till agentens verktyg, inte enbart till modelltext.
På DGX Spark kan NemoClaw köra Hermes i OpenShell med policyer för filsystem, nätverk och processer. Behandla det som en alfaväg för utvärdering, inte som en säkerhetsgaranti för produktion.
4. n8n
- Kör i egen drift på samma betrodda nätverk eller via VPN. Följ helst mönstren i lokala OpenAI-kompatibla slutpunkter i n8n och idempotens och mänskliga godkännandesteg.
- För överlämningen till Hermes med frågor och svar nedan ska du konfigurera n8n:s officiella HTTP Request-nod med bearer-uppgifter och uttryckliga tidsgränser. Lagra den varaktiga idempotensposten för verksamheten i n8n eller verksamhetssystemet. Hermes API-server stöder cachelagring av svar med
Idempotency-Keyi fem minuter, men detta begränsade fönster på transportnivå ersätter inte varaktig deduplicering i arbetsflödet. Om du medvetet väljer den separata webhookvägen för Hermes kan n8n:s Crypto-nod skapa HMAC-signaturen, men de signerade bytevärdena och V2-rubrikerna med tidsstämplar måste exakt följa Hermes webhookkontrakt. Överlämning mellan n8n och Hermes via webhook är en illustrativ utformning, inte en officiell leverantörsintegration.
Tre kandidatarbetslaster för utvärderingen
Användningsfall A: Privat supporttriage
Problem: Ärenden innehåller kundtext som du inte vill skicka till en offentlig modellleverantör. Triage kräver fortfarande bedömning av allvarlighetsgrad, produktområde och möjliga dubbletter samt ett svarutkast.
Flöde:
- Webhook från ärendehanteringen → n8n.
- n8n validerar schemat, tar bort hemligheter som token och råa kortnummer och deduplicerar efter ärende-id.
- n8n registrerar en idempotensnyckel på arbetsflödesnivå och skickar sedan en minimal nyttolast till den privata Hermes API-servern med bearer-autentisering och ett avgränsat, versionshanterat promptkontrakt för
support-triage. - Hermes anropar den lokala DeepSeek-V4-Flash och returnerar ett svar. n8n tolkar och schemavaliderar det begärda objektet
{severity, product, confidence, draft, needs_human}. Felaktig eller ofullständig utdata skickas till mänsklig granskning. - n8n förgrenar flödet: låg tillförlitlighet eller
needs_human→ godkännande i Slack; hög tillförlitlighet och åtgärder på tillåtelselistan → uppdatera bara ärendefält. Skicka fortfarande inget automatiskt förrän lösningen är redo för det.
Hypotes att pröva: n8n-anslutningar och ett Hermes API-anrop kan möjligen stödja detta flöde. Modellslutpunkten finns kvar på det privata nätverket, men utgående verktyg och SaaS-anslutningar korsar fortfarande gränsen och behöver regler för utgående trafik. Utvärdera om mer kontext förbättrar resultatet, men verifiera fortfarande utkastet.
Gör inte: Låt Hermes öppna godtyckliga URL:er från ärendetext utan en tillåtelselista i en proxy, eftersom texten kan innehålla promptinjektion.
Användningsfall B: Intern researchassistent med lång kontext
Problem: Jurister, driftansvariga eller teknikledare behöver kunna säga ”läs dessa 40 PDF:er eller det här utsnittet ur ett monorepo och skriv ett strukturerat underlag” utan att ladda upp materialet till en SaaS-LLM.
Flöde:
- En människa lägger in en jobbmapp, eller så bevakar n8n en säker inkorg.
- n8n paketerar metadata och relevanta sökträffar, eller så läser Hermes-verktyg från en tillåten sökväg eller ett RAG-index.
- Hermes kör en prompt för efterforskning i flera steg mot DeepSeek-V4-Flash med ett uttryckligt citatschema.
- n8n validerar svarets form och placerar det i en granskningskö. Kräv en källsökväg och ett textintervall för varje påstående. Människor godkänner eller avvisar det.
Varför V4-Flash: Den officiella kontexten på 1M token och effektiv bearbetning av lång kontext är poängen, men kontextfönster ≠ noggrannhet. Kvaliteten på informationshämtningen och citatkontrollerna spelar större roll än det maximala antalet token.
Gör inte: Lämna inte automatiskt in regulatoriska rapporter eller medicinska sammanfattningar. Använd endast lösningen för läsarbete och utkast; behöriga yrkespersoner ska godkänna.
Användningsfall C: Kontinuerlig driftundersökning med chatt som ingång
Problem: Jourpersonalen vill kunna säga ”bevaka dessa larm, undersök dem med loggar och föreslå ett steg i driftinstruktionen” samt ställa följdfrågor via Telegram eller Slack utan att ge modellen rootåtkomst till systemen.
Flöde:
- Ett schema i n8n eller en PagerDuty-webhook samlar in larmfingeravtryck.
- Hermes undersöker med verktyg som har enbart läsbehörighet, exempelvis API:er för loggfrågor och statusslutpunkter, via åtkomstuppgifter på en tillåtelselista.
- Hermes returnerar en hypotes, belägg och förslag på nästa kommando utan att köra det.
- En valfri OpenClaw- eller NemoClaw-kanal låter jourpersonalen fråga en separat konfigurerad agentkörmiljö, med tillåtelselistor för parkoppling (grunderna i OpenClaw-säkerhet). Anta inte att OpenClaw och Hermes delar session eller minneslager.
Hypotesen om två Spark-enheter: samtidiga undersökningar eller en större modell eller kontext kan motivera den andra noden. Jämför med en Spark och hanterad inferens utifrån uppmätt kö, kvalitet, latens, total ägandekostnad och dataskyddskrav.
Gör inte: Åtgärda inte automatiskt. Föreslagna kommandon ska gå till en människa eller en strikt avgränsad körmiljö för driftinstruktioner med egen autentisering.
Fellägen att utforma för från första dagen
| Fel | Symptom | Åtgärd |
|---|---|---|
| Felkonfiguration av NCCL/RoCE | Systemet hänger eller faller tillbaka till TCP med mycket hög latens | Lås NCCL till RoCE-gränssnitt; validera nätverket före agenter |
| För stor kontext | Ett långt jobb blockerar andra | Begränsa max_model_len och samtidigheten; köa i n8n |
| Missbruk av ingång | Angripare utlöser Hermes | Bearer-autentisering eller HMAC + tidsstämpel; privat nätverk; hastighetsbegränsning |
| Promptinjektion | Ärendetext åsidosätter policyn | Separata systemprompter för varje rutt; tillåtelselistor för verktyg; ingen rå HTML till skalet |
| Tysta SaaS-skrivningar | Dubbla CRM-uppdateringar | Idempotensnycklar; mänskligt godkännande före sändning |
| Modellförändring | Receptet går sönder efter en containeruppdatering | Lås avbildningarnas digestvärden; kör inledande test i CI |
Hur ”klart” ser ut
Du kan endast hävda att den testade omfattningen fungerar när:
- Ett versionslåst bygge för två Spark-enheter klarar upprepade och samtidiga uthållighetstester, inklusive den felbild som rapporterats uppströms. Registrera exakt antal körningar, kontextstorlekar och felfrekvens.
- Vägen n8n → Hermes → modell är autentiserad från början till slut och loggad, och n8n validerar det returnerade applikationsschemat.
- Minst ett namngivet arbetsflöde körs med mänskligt godkännande av varje externt meddelande och klarar sin fördefinierade utvärderingsuppsättning.
- Du har en skriftlig återställningsplan: inaktivera anropet från n8n till Hermes, falla tillbaka till mallar enbart i n8n eller rikta Hermes mot en mindre lokal modell.
Övning
Välj användningsfall A. Implementera endast webhookvalidering i n8n, ett versionshanterat promptkontrakt genom Hermes API-server med bearer-autentisering, en idempotenspost på arbetsflödesnivå, ett lokalt modellanrop, validering av svarsschemat och en förhandsgranskning av utkastet. Anslut inte funktionen för att skicka e-post. Använd en representativ, godkänd utvärderingsuppsättning som är stor nog att omfatta normala och ovanliga fall. Fördefiniera kriterier för överensstämmelse om allvarlighetsgrad, påståenden utan stöd, redigeringsbehov, latens och fel. Avgör utifrån dessa belägg om en andra Spark eller V4-Flash är motiverad.
Vidare läsning
- DGX Spark: vad det är
- Koppla samman två DGX Spark-enheter
- NemoClaw sandlådeagenter på Spark
- Hermes kontra n8n
- n8n ↔ Hermes webhook-överlämning
- Officiellt: modellkort för DeepSeek-V4-Flash, modellkort för DeepSeek-V4-Flash-DSpark, Hermes API-server, Hermes webhooks, n8n HTTP Request-nod, NVIDIA Spark-klustring



