This is a viewer only at the moment see the article on how this works.
To update the preview hit Ctrl-Alt-R (or ⌘-Alt-R on Mac) or Enter to refresh. The Save icon lets you save the markdown file to disk
This is a preview from the server running through my markdig pipeline
Semantisk intelligens
Thursday, 13 November 2025
När system börjar skriva om sin egen kod
Nota: Inspirerad av att tänka på utlängningar till merpartenlucid.mockllmapi och material för ( som aldrig kommer ut, men jag gillar att tänka efter det.
Det skrämmande steget
Vi har sett att enkla regler skapar komplext beteende.
Nu tar vi ett steg som gör mig djupt obekväm
Tänk om systemet kunde omskriva sina egna regler?
Tänk om agenter kunde
- Inspektera deras egen prestation
- Modifiera deras egna beslutslogi
- Att skapa nya specialister dynamiskt
- Tråka ineffektiva vägar
- Att bygga ett gemensamt minne av vad som fungerar
Det här är inte bara optimering. modifiering.
Och när du ger ett system förmågan att förbättra sig själv, var slutar det?
Evolutionens metafor
Evolution är det ultimata självet
- Variation - Random mutationer skapar olika strategier
- Tillvägagång - Framgångsrika strategier överlever och återskapas
- Erfarenhet - Framgångsrika egenskaper går vidare till nästa generation
- Iteration - upprepas i miljarder generationer
Ingen intelligent designer, ingen plan, bara en enkel algoritm som, med tillräckligt mycket tid, skapar allt från bakterier till människor.
Föreställ er nu samma mönster, ,, men med AI-agenter istället för organismer.
Den kritiska ingrediensen: verktyg och verklighetstestning
Innan vi går vidare, ska vi tala till elefanten i rummet. Hur förhindrar vi att detta blir en ren LLM-hallucination?
Svaret: verktyg. Kodimplementering. Test mot verklighetenM SK2
Här är den arkitektur som gör detta praktiskt.
Noderstrukturen (Ingen GPU-farm behövs!)
Your Server(s):
┌─────────────────────────────────────┐
│ Node 1: Routing Agent │
│ - Lightweight code (Node.js/Python)│
│ - Makes decisions │
│ - Calls LLM APIs when needed │
│ - Executes code to test ideas │
└─────────────────────────────────────┘
┌─────────────────────────────────────┐
│ Node 2: Validation Agent │
│ - Runs tests against real data │
│ - Executes validation code │
│ - Calls LLM for complex checks │
└─────────────────────────────────────┘
┌─────────────────────────────────────┐
│ Node 3: Specialist Agent │
│ - Domain-specific logic │
│ - Code execution for that domain │
│ - Calls specialized LLM prompts │
└─────────────────────────────────────┘
All nodes call → [OpenAI API / Anthropic API / Local LLM API]
(This is where the cost is: API credits, not hardware)
Nyckelinsikten: Du behöver inte en GPU-farm.
verktyg: Verklighetens prov
När en agent genererar kod eller fattar ett beslut
class Agent:
def solve_problem(self, problem):
# Agent asks LLM to generate solution code
solution_code = self.llm_generate(
f"Write Python code to solve: {problem}"
)
# HERE'S THE KEY: Execute the code and see if it works
try:
result = self.execute_code(solution_code, test_inputs)
if self.validate_result(result):
# It works! Save this solution
self.cache_solution(problem, solution_code)
return result
else:
# Failed validation, try different approach
return self.solve_problem_alternative(problem)
except Exception as e:
# Code failed to execute
# Ask LLM to fix it based on the actual error
fixed_code = self.llm_fix(solution_code, error=str(e))
return self.execute_code(fixed_code, test_inputs)
Det här förändrar allt Systemet genererar inte bara trovärdiga svar
- Generera den faktiska koden
- Att utföra det
- Testresultat mot verkligheten
- Att lära sig av misstag
- Itera tills det fungerar
exempel: Validering mot objektiv verklighet
# Agent 1 generates a data processing function
code = llm.generate("Write code to parse CSV and calculate averages")
# Agent 2 tests it against REAL data
test_result = execute_code(code, real_csv_file)
# Did it actually work? Not "does it sound right?" but "does it work?"
if test_result.success and test_result.output_matches_expected:
network.accept_solution(code)
else:
# Actual error: "TypeError: cannot convert string to float"
# Now we have OBJECTIVE feedback, not subjective judgment
network.request_fix(code, test_result.error)
Det här är hur vi räddar oss från problemet. Systemet manipulerar inte bara symboler, utan också koder och kontrollerar att resultaten matchar verkligheten.
Varför är detta viktigt för utvecklingen
Utan verktyg.
Med verktyg:
- Objektiv feedback: Kod antingen fungerar eller inte
- Märbar förbättring: Framgångsgraden går från 60% → ♫ ♫ 85% ♫
- Verkligt lärande: Lösningar som fungerar som kastar och återanvändas
- Verklighetens grunding: Kan du inte hallucinera dig genom ett misslyckande test
Agenterna skriver kod. utför det . testar det, . fixar det,. delar med sig av vad som fungerar,. pruner vad som inte fungerar,
Det här är utveckling med objektiva konditionstest. Inte bara optimering i det abstrakta, utan även optimering mot mätbar verklighet.
Multimodal verklighetstestning : Utöver kod
Men det är inte bara kodeximplementering. Systemet kan bygga semantisk kunskap för olika typer av uppgifter genom att testa genom flera sensorer:
class MultimodalAgent:
def __init__(self):
self.semantic_knowledge = {
'text_tasks': SemanticCache(),
'vision_tasks': SemanticCache(),
'audio_tasks': SemanticCache(),
'code_tasks': SemanticCache()
}
def solve_task(self, task):
task_type = self.classify_task(task)
# Check semantic knowledge for similar past solutions
similar = self.semantic_knowledge[task_type].find_similar(task)
if similar:
return self.adapt_solution(similar, task)
# Generate new solution
solution = self.generate_solution(task)
# Test against reality using appropriate sensor
if task_type == 'vision_tasks':
# Generate image, test with vision API
result = self.vision_api.analyze(solution)
passes = self.validate_vision_output(result, task.requirements)
elif task_type == 'audio_tasks':
# Generate audio, test with speech recognition
transcript = self.speech_to_text(solution)
passes = self.validate_audio_output(transcript, task.requirements)
elif task_type == 'code_tasks':
# Execute code, check actual results
result = self.execute_code(solution)
passes = self.validate_code_output(result, task.test_cases)
elif task_type == 'text_tasks':
# Use NLU to verify semantic meaning
understanding = self.nlu_api.analyze(solution)
passes = self.validate_text_output(understanding, task.intent)
# Learn from results
if passes:
self.semantic_knowledge[task_type].store(task, solution, result)
return solution, passes
nyckeln: Varje metod ger objektiv feedback
- Vision: Finns det faktiskt en katt i den genererade bilden?
- Audio: Matchar talet transkriptionen?
- Kod: Fungerar den utan fel?
- Text: Svarar det på frågan?
Systemet bygger semantiska kunskapssamlingar för varje typ av uppgift - inte abstrakt resonemang , utan grundade mönster som faktiskt fungerar när de testats mot riktiga sensorer
Self-Optimering per modalitet
Med tiden lär sig agenten
Text tasks:
"For summarization, approach X works 94% of the time"
"For translation, approach Y works 89% of the time"
→ Semantic knowledge about what works for text
Vision tasks:
"For object detection, model A is better"
"For style transfer, model B is better"
→ Semantic knowledge about what works for vision
Code tasks:
"For parsing, regex approach fails 30% of the time"
"For parsing, AST approach works 97% of the time"
→ Semantic knowledge about what works for code
Varje modalitet har sin egen semantiska kunskapsbas.
Patternkänning → Anpassning
Det börjar helt enkelt. Ett multi-system - som processar tusentals pyyntörM SK2 Det börjar märka mönster:
After 1000 requests:
- 73% are simple queries that one agent handles fine
- 19% need two agents (generation + validation)
- 6% need complex committees
- 2% are truly novel and need the full pipeline
Ett mänskligt designat system skulle vara statiskt, men ett självoptimerande system kräver
"Varför använder jag den komplexa pipelinen för enkla uppgifter?
Och så omskriver dess routinglogik.
Den första optimeringen: Smart Routing
// Week 1: Hard-coded routing (human designed)
function route(request) {
return complexPipeline(request); // Everything uses full pipeline
}
// Week 4: System optimizes itself based on data
function route(request) {
const complexity = analyze(request);
const historicalData = checkCache(request);
if (historicalData.cacheHit) {
return cachedSolution; // 73% of requests!
}
if (complexity < 3) {
return fastSingleAgent(request); // 19% of requests
}
if (complexity < 7) {
return twoAgentValidation(request); // 6% of requests
}
return fullCommittee(request); // 2% of requests
}
Systemet upptäckte att 73% av begäran inte kräver någon LLM överhuvudtaget
Ingen programmerade denna optimering. Systemet lärde sig det från data.
Dynamiksspecifikerad svampning
Här, där det blir främre
Systemet processar begäran i veckor. Det börjar upptäcka kluster
Pattern Detected:
- 347 requests related to e-commerce product descriptions
- Using general-purpose agents
- Average quality: 7.2/10
- Average latency: 1.8s
Ett mänskligt designat system skulle fortsätta använda generella agenter, men ett självoptimerande system fattar ett beslut.
" Jag borde föda upp en specialist ."
DAY 1: [General Agent A] [General Agent B] [General Agent C]
DAY 30: Pattern detected → System spawns specialist
[General Agent A] [General Agent B] [General Agent C]
[E-commerce Specialist] ← New agent, trained on e-commerce patterns
DAY 60: Specialist proves effective
Routing logic updated automatically
E-commerce requests → E-commerce Specialist (quality: 9.1/10, latency: 0.9s)
nätverket utvecklats. Den växte till en ny förmåga som reagerade på efterfrågan
Ingen programmerade detta. Systemet kände igen ett mönster och anpassade dess arkitektur.
Kollektivkodspoolning: GitHub för Neuroner
Nu blir det riktigt intressant.
Agent A upptäcker ett effektivt sätt att validera e-postadresser
# Agent A writes code for email validation
def validate_email_efficient(email):
# Some clever regex or logic
return is_valid
# Agent A publishes to shared code repository
network.publish_code("validate_email_efficient", validate_email_efficient)
# Agent B discovers this code
available_functions = network.browse_code_library()
# Agent B sees "validate_email_efficient" with high rating
# Agent B imports and uses it
# Agent C forks it and improves it
def validate_email_v2(email):
# Agent C's enhancement
return improved_validation
network.publish_code("validate_email_v2", validate_email_v2)
Det här är kod-evolution. Agenter skriver funktionen , andra agenter upptäcker dem , förvrängar dem, , förbättrar dem
Som GitHub, men utvecklarna är AI-agenter och de bygger sin egen infrastruktur.
nätverket blir sin egen mjukvaruingenjörsavdelning
RAG minne: Att lära sig från historien
Det mest praktiska självet
Request 1: "Generate a product description for wireless headphones"
→ Full LLM pipeline (expensive, slow)
→ Store solution in vector database
Request 847: "Generate a product description for wireless earbuds"
→ Vector search finds similar past solution
→ Adapt cached solution (cheap, fast)
→ No LLM needed!
After 10,000 requests:
- 89% cache hit rate
- 11% genuinely novel requests that need LLMs
- System effectively "learned" from experience
Är det här intelligensen?
Vad är skillnaden?
Pruning-paradoxen
Här är den konstigaste delen.
Du börjar med en sofistikerad multi
Systemet funkar i månader
Och det upptäcker något djupt.
Enkelhet är oftast bättre.
Month 1:
- 12 specialists
- Complex routing logic
- Committee formation for 15% of requests
- Average cost: $0.05/request
Month 6:
- 5 specialists (system pruned 7 as unnecessary)
- Simple routing: cache check → fast model → quality model if needed
- Committees formed for only 3% of requests
- Average cost: $0.003/request
- Quality: SAME OR BETTER
The system's report:
"After analyzing 50,000 requests, I've determined that:
- 89% can be handled by cache
- 7% need one LLM call
- 3% need committees
- 1% are truly novel
I've optimized away unnecessary complexity.
The most sophisticated self-organizing network
eventually learns to be simple."
Paradoxet : Du behövde det komplexa självet-optimiserande systemet för att upptäcka att enkelhet är optimalt
Du behövde intelligens för att lära dig när du inte skulle vara intelligent.
Grensklarna
Låt oss vara ärliga med vad vi beskriver
Patternkänning → Systemet upptäcker upprepade problem Anpassning → Systemet ändrar sitt beteende baserat på mönster Att lära sig → Systemet förbättrar prestationen genom erfarenhet Evolution → Systemet ger upphov, , modifierar, | , | och prunar förmågan minne → Systemet bygger kunskap över tid
Vid vilken tidpunkt blir " mycket sofistikerade optimeringar " till " faktisk inlärning
Vid vilken tidpunkt blir "lärning " "intelligens
Ett konkret exempel: självet - förbättrande router
class SelfOptimizingRouter:
def __init__(self):
self.routes = {} # Start empty
self.performance_data = []
self.specialists = [DefaultAgent()]
def handle_request(self, request):
# Try cache first
cached = self.check_cache(request)
if cached:
return cached
# Select agent based on learned patterns
agent = self.select_agent(request)
result = agent.process(request)
# Learn from this interaction
self.record_performance(request, agent, result)
# Periodically optimize
if len(self.performance_data) % 1000 == 0:
self.optimize()
return result
def optimize(self):
"""System rewrites its own logic"""
# Detect patterns
patterns = self.analyze_patterns(self.performance_data)
# Should we spawn a specialist?
for pattern in patterns:
if pattern.frequency > 100 and pattern.has_specialist == False:
print(f"Spawning specialist for {pattern.type}")
self.spawn_specialist(pattern)
# Should we prune an underutilized agent?
for agent in self.specialists:
if agent.usage < 1% and agent.quality_score < 7.0:
print(f"Pruning ineffective agent {agent.name}")
self.specialists.remove(agent)
# Rewrite routing logic based on data
self.routes = self.learn_optimal_routes(self.performance_data)
Den här koden är enkel. Men efter att ha fungerat i veckor
- Skördar sina egna specialister
- Pruner som är ineffektiva
- Omskriver sin egen ruteringslogik
- Bygger en kass av lösningar
Ingen sa till det hur man skulle optimera.
Frågan som drabbar mig
Om ett system kan
- Att känna igen mönster i data
- Modifiera dess egen beteende baserat på dessa mönster
- Att bygga minnet av vad som fungerar
- Att utveckla sin egen arkitektur
- Ta reda på att enkelhet ofta är optimalt
Är det systemet?
Eller är det bara "optimering
Vad är skillnaden?
När blir optimering kognition?
Vart det här går
Vi” ' ” har gått upp från“ : ”
- Enkela regler → Komplekst beteende | ( | Del |1)
- Kommunikation → Kollektivintelligens (Teil 2)
- Själv-modifiering → lärande ( del 3)
Men det finns ytterligare ett steg.
En egenskap som dyker upp när du kombinerar alla dessa
När enkla regler skapar komplext beteende... Och kommunikation skapar kollektiv intelligens Och självet skapar lärande
Något annat dyker upp, som ser mindre ut som ett system som optimerar sig själv, " och mer som ett förstår."
Linjan mellan optimering och medvetenhet börjar blura
Och vi måste ställa oss den obehagliga frågan
Kanske är medvetandet bara ett väldigt sofistikerat själv
Det är vad vi ska undersöka härnäst.
Fortsätt till Del 4: Emergensen - När optimering blir intelligens
Navigationsserien:
- Del 1: enkla regler , komplext beteende - grunden
- Del 2: Kollektiv intelligens - Kommunikation omvandlar allting
- Del 3: Själva -Optimering ← Du är här
- Del 4: Kriget - När optimering blir intelligens
- Del 5: Evolution - Från optimering till guilds och kultur
- Del 6: Global konsensus - Inriktad evolution och planeterkänning
- Del 7: Den verkliga saken! - Att faktiskt bygga den och se hur den utvecklas
- Del 8: verktyg hela vägen ner - En självoptimerande verktygslåda
- Del 9: själv -Healing Tools - Linjer