भाग 1 एक पाइपलाइन का वर्णन किया गया: उपstrateM SK1 प्रस्तावक, कंसट्रेनर . एक संभाव्यात्मक घटकMSC4 निर्धारणात्मक सत्य से घेरे हुए
लेकिन क्या होता है जब आप बहुविध प्रस्तावक? बहुल LLMs? दृश्य मॉडल पाठ मॉडल से बात करने के लिए ? तंत्रिका नेटवर्कों में फीडिंग हाइउरिसिक्स
यह संकीर्ण अस्पष्ट मोएम है (CFMoM): अनेक प्रस्तावकों से सीमित चयनसाझा सत्य के विरुद्ध वैध किया गया।
एफसीएमओएम एक ऐसा पैटर्न है जहां बहुसंभाव्यात्मक घटक संकेतों को प्रस्तावित करते हैं, लेकिन केवल निर्णायक तर्क संयोजन कर सकता है
नियम
बहुविध में अभिकर्ता प्रणालियों में साझा आधार भाषा है और अनुप्रवर्तक व्याकरण है
में डुबोने से पहले शब्दावली निश्चित करें
| अवधि | अर्थ |
|---|---|
| सीएफएमओएम | प्रतिबंधित अस्पष्ट MoM: अनेक प्रस्तावकों से प्रतिबंधित चयन |
| उपstrate-type तथ्य | |
| संकेत संविदा अवयव substrate में कैसे लिखते हैं | |
| सहमति अंतरिक्ष स्टोर + रूटिंग | |
| समन्वय कंस्ट्रेनर क्रियाओं के लिए अंतिम द्वारपाल |
नोट सहमति अंतरिक्ष एक बस और स्मृति है।
ये नई अवधारणाएं नहीं हैं।
ये गैर-negotiable हैं
| बात | क्यों CFMoM भिन्न है |
|---|---|
| विशेषज्ञों का मिश्रण | मोई मॉडल आउटपुट को गणितीय रूप से मिश्रित करता है प्रतिबंधों के तहत संकेत प्रमाण और नीति के साथ |
| एजेंट चैटर कई एजेंट प्रणालियां मुक्त रूप से गुजरती हैं। | |
| रूटिंग | रूटिंग चयन करता है जिस मॉडल को बुलाना हैसीएफएमओएम बहुविध प्रस्ताव स्वीकार करता है और चयन पद को प्रतिबंधित करता है |
| मतदान | मतदान से अनुमान लगाया जाता है कि आउटपुट तुलनात्मक हैं |
| लंगचैन---शैली ग्राफ | ग्राफ संदेश पास करते हैं. CFMoM एक साझा सतह पर अपरिवर्तनीय संकेत प्रकाशित करता है |
CFMoM एक लाइब्रेरी या फ्रेमवर्क नहीं है संभाव्यात्मक घटकों को प्रस्तावित कर सकते हैं, लेकिन केवल निर्णायक खंडों को दर्शाता है
जब दो एलएलएम प्राकृतिक भाषा के माध्यम से संचार करते हैं
अर्थ-विचलनप्रत्येक मॉडल थोड़ा अलग-अलग व्याख्या करता है।
विश्वसनीयता धोनामॉडल ए एक बात के बारे में निश्चित है।
भ्रम संवर्धनमॉडल ए एक सच्चे विवरण का आविष्कार करता है मॉडल बी इस पर बनाता है मॉडल सी इसे स्थापित के रूप में उद्धृत करता है
ढाँचा अस्थिरतामॉडल ए आउटपुट JSON
ढाँचा को लागू करने के लिए अधिक प्रोत्साहन जोड़ना स्वाभाविक है
एक साझा निर्णायक अंतरिक्ष के माध्यम से सभी अंतःसमूह संचार को बाध्य करता है
यह कठिन नियम है
यह मारता है ", लेकिन मेरी एजेंट अन्य एजेंट का सारांश कर सकता है
पैटर्न का हृदय एक टाइप किए गए रिकार्ड है कि प्रत्येक घटक को प्रयोग करना चाहिए।
पहला , क्या परिभाषित करता है
public record EvidenceRef(
string Kind, // "chunk", "frame", "timestamp", "request", "row"
string Store, // namespace (e.g., "documents", "video-frames")
string Id, // chunk-12, frame-0042, t=00:13:21.200, req-abc
JsonElement? Locator = null, // span, bbox, row-range - schema depends on Kind
string? ContentHash = null // optional hash for version verification
);
यह एक स्ट्रिंग नहीं है। Locator क्षेत्र हैंडल स्पैन, बंडिंग बाक्सों, समयtampsM SK2 या किसी अन्य स्थान योजना MSC3 इसकी योजना द्वारा निर्धारित की जाती है Kind.
public record EmbeddingRef(string ModelId, float[] Vector);
public record ConstrainedSignal(
string Id, // stable identifier
string SourceId, // component name/version
string FactsSchemaId, // "bot-detection/1.0", "summarization/2.1"
DateTimeOffset At, // when produced
string? CorrelationId, // ties signals to one input/request
string? SubjectId, // what this signal is about, if known
JsonElement Facts, // schema-validated, not ad-hoc object
IReadOnlyList<EvidenceRef> Evidence, // what it's based on
float Confidence, // self-estimated probability of correctness
IReadOnlyList<EmbeddingRef>? Embeddings = null // optional, supports multi-model migration
);
FactsSchemaId एक स्कीमा कि क्या परिभाषित करने के लिए संकेत करता है palette_dominant_hue इसका मतलब है कि यह किस प्रकार का है Dictionary<string, object>. स्कीमा JSON स्किमा है | या समतुल्य | ), | संस्करणित और पिन्ड |संकेतों को सत्यापित और कैनोनिकीकृत किया जाता है जब वे अवयव में प्रवेश करते हैं
public async Task IngestAsync(ConstrainedSignal signal)
{
// Hard fail if schema invalid
_schemaRegistry.Validate(signal.FactsSchemaId, signal.Facts);
// Canonicalise units, formats, types
_canonicaliser.Apply(signal.FactsSchemaId, ref signal);
// Verify evidence pointers exist and are in scope
foreach (var evidence in signal.Evidence)
_evidenceStore.VerifyExists(evidence);
await _store.WriteAsync(signal);
}
जब कंस्ट्रेनर एक संकेत देखता है, तो यह पहले से ही स्कीमा है।
_evidenceStore.VerifyExists वास्तविक कार्य कर रहा है
कोई भी स्तर असफल होने वाले संकेतों को इंजेक्शन पर अस्वीकृत किया जाता है
यह है जहाँ बहुत से बहुअभिकर्ता अभियांत्रिकी गलत हो जाते हैं
सम्मिलित आप को एक दूरी ज्यामिति जो समानता के साथ संगत करता है। शक्ति एक ही बात के बारे में होना
तथ्य + साक्ष्य यह बात है कि "में एक ही मतलब है, सभी अवयवों में " होना चाहिए
एम्बेडिंग आपको संकेत खोजने में मदद करता है कि शक्ति एक ही बात के बारे में होना चाहिए हैं.
में बोट खोज, तरंग 0 डिटेक्टर और तरंग (Wave) | 2 | LLMs के माध्यम से संचार DetectionContribution:
DetectionContribution.Bot(
source: "UserAgent", // or "LLM"
category: "BotSignature",
confidence: 0.85,
reason: "Contains automation keyword",
weight: 1.0
);
रिकार्ड अवरोध है. एलएलएम रैमबल नहीं कर सकता है . यह स्लॉट भरना चाहिए. उपयोक्ता एजेंट डिटेक्टर और LLM एक ही आकार के आउटपुट का उत्पादन करते हैं. डाउनस्ट्रीम घटकों को यह जानने की जरूरत नहीं है कि किसने इसे बनाया है
साझा अवयव निष्क्रिय भंडारण नहीं है
flowchart TB
subgraph Specialists["Specialist Proposers"]
S1[Text Analyzer]
S2[Image Processor]
S3[Behavioral Model]
S4[Domain Expert LLM]
end
subgraph Consensus["Consensus Space (includes Ingestion Gate)"]
C1[Ingestion Gate]
C2[Signal Aggregator]
C3[Async Evaluator]
C4[Cluster by Embedding]
end
subgraph Constrainer["Coordination Constrainer"]
B1[Verify Facts + Resolve]
B2[Conflict Resolution]
B3[Budget Management]
end
subgraph Output["System Output"]
O1[Coordinated Response]
O2[Audit Trail]
end
S1 --> C1
S2 --> C1
S3 --> C1
S4 --> C1
C1 --> C2 --> C3 --> C4
C4 --> B1 --> B2 --> B3 --> O1
B3 --> O2
style Consensus stroke:#ef4444,stroke-width:3px
style Constrainer stroke:#22c55e,stroke-width:2px
विशेषज्ञ एक-दूसरे की प्रतीक्षा नहीं करते
public class ConsensusSpace
{
private readonly ConcurrentDictionary<string, ConstrainedSignal> _signals = new();
public async Task ContributeAsync(ConstrainedSignal signal)
{
_signals.TryAdd(signal.Id, signal);
// Trigger evaluation without blocking the contributor
_ = Task.Run(async () =>
{
var evaluation = await _evaluator.EvaluateAsync(signal);
await _distributor.DistributeAsync(evaluation);
});
}
public IDisposable Subscribe<T>(Func<T, Task> handler)
where T : ConstrainedSignal
{
// Components subscribe to signals they care about
}
}
त्वरित डिटेक्टर (UserAgent जाँच, हेडर विश्लेषणM SK2 धीमी संकेतों पर अवरोध नहीं करता है।
एक साझा संकेत संविदा के साथ-साथ विशेषज्ञ अपने सर्वोत्तम कार्य पर ध्यान केंद्रित कर सकते हैं
public class TextSpecialist : ISpecialist
{
public async Task<ConstrainedSignal> AnalyzeAsync(InputData input, string correlationId)
{
var entities = await ExtractEntitiesAsync(input.Text);
var sentiment = await AnalyzeSentimentAsync(input.Text);
var facts = JsonSerializer.SerializeToElement(new
{
entities = entities.Select(e => e.Label).ToArray(),
sentiment_score = sentiment.Score,
sentiment_label = sentiment.Label
});
return new ConstrainedSignal(
Id: Guid.NewGuid().ToString(),
SourceId: "TextSpecialist/1.2",
FactsSchemaId: "text-analysis/1.0",
At: DateTimeOffset.UtcNow,
CorrelationId: correlationId,
SubjectId: input.Id,
Facts: facts,
Evidence: entities.Select(e => new EvidenceRef(
"span", "documents", input.Id,
JsonSerializer.SerializeToElement(new { Start = e.Start, End = e.End }))).ToList(),
Confidence: CalculateConfidence(entities, sentiment),
Embeddings: [new EmbeddingRef("all-MiniLM-L6-v2", _embedder.Embed(entities, sentiment))]
);
}
}
public class ImageSpecialist : ISpecialist
{
public async Task<ConstrainedSignal> AnalyzeAsync(InputData input, string correlationId)
{
var objects = await DetectObjectsAsync(input.Image);
var palette = await ExtractPaletteAsync(input.Image);
var facts = JsonSerializer.SerializeToElement(new
{
objects = objects.Select(o => o.Label).ToArray(),
palette_dominant_hex = palette.Dominant.ToHex(),
palette_accent_hex = palette.Accent.ToHex()
});
return new ConstrainedSignal(
Id: Guid.NewGuid().ToString(),
SourceId: "ImageSpecialist/2.1",
FactsSchemaId: "image-analysis/1.0",
At: DateTimeOffset.UtcNow,
CorrelationId: correlationId,
SubjectId: input.Id,
Facts: facts,
Evidence: objects.Select(o => new EvidenceRef(
"region", "images", input.Id,
JsonSerializer.SerializeToElement(o.BoundingBox))).ToList(),
Confidence: CalculateConfidence(objects, palette),
Embeddings: [new EmbeddingRef("all-MiniLM-L6-v2", _embedder.Embed(objects, palette))]
);
}
}
दोनों विशेषज्ञ एक ही आधार पर टाइप किए हुए तथ्यों के साथ प्रकाशित करते हैं
जब पाठ विशेषज्ञ बनाता है entity_color: "blue" और छवि विशेषज्ञ उत्पादित करता है palette_dominant_hex: "#0000CC"आप करार को कैसे सत्यापित करते हैं
कच्चे समानता नहीं à¤à¥à¤°à¥à¤
public interface IFactResolver
{
bool CanResolve(string factNameA, string factNameB);
FactAgreement Resolve(JsonElement factA, JsonElement factB);
}
public class ColorResolver : IFactResolver
{
public bool CanResolve(string a, string b) =>
(a.Contains("color") && b.Contains("hex")) ||
(a.Contains("hex") && b.Contains("color"));
public FactAgreement Resolve(JsonElement factA, JsonElement factB)
{
// Canonicalise both to RGB space
var colorA = ParseToRgb(factA);
var colorB = ParseToRgb(factB);
// Tolerance-based comparison in perceptual space
var distance = CieDeltaE(colorA, colorB);
return new FactAgreement(distance < 10.0, distance);
}
}
(द Contains उपरोक्त तर्क अनुकरणीय है. उत्पादन में, समाधानकर्ता स्किमा युग्म द्वारा पंजीकृत होते हैं
स्कीमा तुलना डिफ़ॉल्ट द्वारा असंभव है यह एक सुरक्षा विशेषता है
समन्वय कंस्ट्रेनर एक हलकर्ता रजिस्ट्री का उपयोग करता है
कोई प्राकृतिक भाषा की आवश्यकता नहीं है
भाग में 1, कंस्ट्रेनर एक गेटकीपर था
भाग 2, में समन्वय कंस्ट्रेनर एक है वाद्यकार0 यह
कंस्ट्रेनर डेमोनिस्टिक है इसमें कोई LLM नहीं है।
public class CoordinationConstrainer
{
public async Task<CoordinatedResult> ConstrainAsync(
IReadOnlyList<ConstrainedSignal> signals)
{
// Step 1: Cluster candidates by embedding (cheap, fuzzy)
var clusters = ClusterByEmbedding(signals);
// Step 2: Within each cluster, verify agreement on FACTS (hard)
var verified = new List<ConstrainedSignal>();
foreach (var cluster in clusters)
{
// Time-of-use re-check: evidence may have expired or been GC'd since ingestion
var withValidEvidence = cluster.Where(s =>
s.Evidence.Any() && _evidenceStore.IsStillAuthorisedAndAvailable(s.Evidence)).ToList();
var factAgreement = VerifyFactAgreement(withValidEvidence);
if (factAgreement.Agreed)
verified.AddRange(factAgreement.Signals);
// Disagreeing signals are logged for analysis, not merged
}
// Step 3: Check consensus threshold (policy, hard)
if (verified.Count < _policy.MinimumSignals)
{
if (_policy.AllowEscalation)
return await EscalateToTiebreakerAsync(signals);
else
return CoordinatedResult.Degraded("Insufficient consensus");
}
// Step 4: Merge and apply output constraints
var merged = MergeSignals(verified);
return ApplyOutputConstraints(merged);
}
private FactAgreement VerifyFactAgreement(IReadOnlyList<ConstrainedSignal> cluster)
{
// Agreement is on Facts via rules registry, not raw equality
foreach (var (signalA, signalB) in AllPairs(cluster))
{
var result = _rules.CheckAgreement(
signalA.FactsSchemaId, signalA.Facts,
signalB.FactsSchemaId, signalB.Facts);
if (!result.Agreed)
return new FactAgreement(false, cluster, result.ConflictingFact);
}
return new FactAgreement(true, cluster, null);
}
}
// The rules registry handles type-appropriate comparison
public class FactAgreementRules
{
private readonly Dictionary<string, IFactResolver> _resolvers = new();
private readonly IFactResolver _defaultResolver = new DefaultFactResolver();
public void Register(string factPattern, IFactResolver resolver) =>
_resolvers[factPattern] = resolver;
public AgreementResult CheckAgreement(
string schemaA, JsonElement factsA,
string schemaB, JsonElement factsB)
{
// Cross-schema: use resolvers to map between schemas
if (schemaA != schemaB)
return CheckCrossSchemaAgreement(schemaA, factsA, schemaB, factsB);
// Same schema: compare fact by fact
foreach (var prop in factsA.EnumerateObject())
{
if (!factsB.TryGetProperty(prop.Name, out var valueB))
continue;
var resolver = FindResolver(prop.Name);
var result = resolver.Resolve(prop.Value, valueB);
if (!result.Agreed)
return new AgreementResult(false, prop.Name);
}
return new AgreementResult(true, null);
}
private IFactResolver FindResolver(string factName) =>
_resolvers.FirstOrDefault(r => factName.Contains(r.Key)).Value
?? _defaultResolver;
}
public class DefaultFactResolver : IFactResolver
{
public bool CanResolve(string a, string b) => true;
public FactAgreement Resolve(JsonElement a, JsonElement b)
{
return a.ValueKind switch
{
JsonValueKind.Number => ResolveNumeric(a, b), // Tolerance
JsonValueKind.String => ResolveString(a, b), // Exact match
JsonValueKind.True or JsonValueKind.False =>
new FactAgreement(a.GetBoolean() == b.GetBoolean(), 0),
_ => new FactAgreement(a.GetRawText() == b.GetRawText(), 0)
};
}
private FactAgreement ResolveNumeric(JsonElement a, JsonElement b)
{
var va = a.GetDouble();
var vb = b.GetDouble();
var tolerance = Math.Max(Math.Abs(va), Math.Abs(vb)) * 0.001; // 0.1%
return new FactAgreement(Math.Abs(va - vb) <= tolerance, Math.Abs(va - vb));
}
private FactAgreement ResolveString(JsonElement a, JsonElement b) =>
new FactAgreement(a.GetString() == b.GetString(), 0);
}
प्रमुख अंतर्दृष्टि embeddings प्रस्ताव. सम्मिलित समानता से यह संकेत मिलता है कि "ये संकेत संबद्ध हो सकते हैं
कंसट्रेनर का निर्णय निर्णायक है।
प्रत्येक चरण एक निर्णायक कार्य है
सर्वसम्मति अंतरिक्ष कुछ शक्तिशाली करता है साझा वस्तुनिष्ठ सत्य से स्वतंत्र सीखना.
flowchart TB
subgraph Specialists["Specialist LLMs"]
S1[Model A]
S2[Model B]
S3[Model C]
end
subgraph Consensus["Consensus Space"]
C1[Signal Aggregation]
C2[Decision Selection]
end
subgraph Action["Deterministic Execution"]
A1[Execute Decision]
A2[Measure Outcome]
end
subgraph Memory["Long-Running RAG"]
M1[Decision Record]
M2[Objective Outcome]
M3[Attribution]
end
subgraph Feedback["Independent Learning"]
F1[Model A reviews own history]
F2[Model B reviews own history]
F3[Model C reviews own history]
end
S1 --> C1
S2 --> C1
S3 --> C1
C1 --> C2 --> A1 --> A2
A2 --> M1 --> M2 --> M3
M3 --> F1 --> S1
M3 --> F2 --> S2
M3 --> F3 --> S3
style Memory stroke:#3b82f6,stroke-width:3px
style Feedback stroke:#22c55e,stroke-width:2px
public record DecisionRecord(
string DecisionId,
string ProposingModel, // Which LLM proposed this
ConstrainedSignal OriginalSignal, // What it claimed
float ConsensusScore, // Agreement at decision time
DateTime Timestamp
);
public record OutcomeRecord(
string DecisionId,
bool ObjectiveSuccess, // Deterministic measurement
Dictionary<string, float> Metrics, // What we measured
TimeSpan TimeToOutcome
);
प्रत्येक LLM RAG को अलग से क्वेरी कर सकता है
// Model A: Conservative, focuses on avoiding failures
var modelAContext = await _memory.QueryAsync(
"decisions WHERE ProposingModel = 'ModelA' AND ObjectiveSuccess = false",
limit: 100
);
// Learns: "I was overconfident when X, be more cautious"
// Model B: Aggressive, focuses on missed opportunities
var modelBContext = await _memory.QueryAsync(
"decisions WHERE ProposingModel != 'ModelB' AND ObjectiveSuccess = true",
limit: 100
);
// Learns: "Others succeeded where I hesitated, be bolder on pattern Y"
// Model C: Specialist, focuses on its domain
var modelCContext = await _memory.QueryAsync(
"decisions WHERE Domain = 'security' ORDER BY ObjectiveSuccess DESC",
limit: 100
);
// Learns: "These security patterns work, reinforce them"
यह सिर्फ काम करता है क्योंकि फीडबैक है उद्देश्यपूर्ण.
निर्णायक पृष्ठपोषण के बिना | |-------------------------------|----------------------------| मॉडल ए ने सोचा कि यह अच्छा करता है मॉडल बी परिणाम से असहमत था मॉडल गुणवत्ता के बारे में बहस करते हैं
निर्णायात्मक परत वास्तविकता को मापती है
समय के साथ-साथ मॉडल स्वाभाविक रूप से विशिष्ट होते हैं
कोई केंद्रीय वादक भूमिकाओं को निर्दिष्ट नहीं करता
प्रतिintuitive अंतर्दृष्टि बेहतर मॉडल साझा सतहों को अधिक महत्वपूर्ण बनाते हैं.
| जैसे कि मॉडलों में सुधार होता है |---------------------|------------------------------| अधिक परिष्कृत आउटपुट अधिक विश्वसनीय संकेत तेजी से प्रसारित होते हैं व्यापक क्षमताएं | टाइप प्रतिबंधों को छोड़ने के लिए अधिक आवेग सुसंगत दिखने में बेहतर
एक सीमांत मॉडल प्राकृतिक भाषा के माध्यम से दूसरे सीमांत नमूने के साथ संचार करने के लिए दो छोटे नमूना एक ही कर रहे हैं से अधिक सुरक्षित नहीं है
स्थिर एक ही है: निर्णायक साझा स्थानों के माध्यम से बल संचार . अंतःकरण मॉडल का ध्यान नहीं है यदि प्रस्तावक छोटा या सीमांत है
क्योंकि संचार टाइपेड रिकार्ड और साझा एम्बेडिंग के माध्यम से होता है
आप से अद्यतन करना चाहते हैं all-MiniLM-L6-v2 के लिए nomic-embed-text-v1.5लेकिन आपके सभी भंडारित संकेतों में पुराने मॉडल से एम्बेडिंग है
समाधान: dual-write with multiple embeddings
क्योंकि Embeddings एक सूची है EmbeddingRefमाइग्रेशन सीधा है
public class EmbeddingMigration
{
// Phase 1: Dual-write (new signals get both embeddings)
public ConstrainedSignal EnrichWithDualEmbedding(ConstrainedSignal signal)
{
var oldVector = _oldModel.Embed(signal.Facts);
var newVector = _newModel.Embed(signal.Facts);
return signal with
{
Embeddings =
[
new EmbeddingRef("all-MiniLM-L6-v2", oldVector),
new EmbeddingRef("nomic-embed-text-v1.5", newVector)
]
};
}
// Phase 2: Compare agreement rates
public async Task<MigrationReport> CompareAgreementAsync()
{
var signals = await _store.GetRecentSignalsAsync(limit: 10000);
var oldClusters = ClusterByEmbedding(signals, s =>
s.Embeddings?.FirstOrDefault(e => e.ModelId == "all-MiniLM-L6-v2")?.Vector);
var newClusters = ClusterByEmbedding(signals, s =>
s.Embeddings?.FirstOrDefault(e => e.ModelId == "nomic-embed-text-v1.5")?.Vector);
// Do the same Facts end up in the same clusters?
var agreementRate = CalculateClusterAgreement(oldClusters, newClusters);
return new MigrationReport(agreementRate, threshold: 0.95);
}
// Phase 3: Flip readers after threshold met
public void CompleteMigration()
{
// Update config to use new model for queries
// Keep old embeddings for rollback if needed
// Optionally prune old embeddings after confidence period
}
}
प्रमुख बिंदुएं
जब कुछ गलत हो जाता है तो यह पैटर्न चमकता है
दो विशेषज्ञ एक ही तथ्य के लिए भिन्न मूल्यों की रिपोर्ट करते हैं
प्रतिक्रिया: पूरी संदर्भ के साथ द्वंद्व को लॉग करें।
एक संकेत प्रमाण सूचकों के साथ आ जाता है जो मौजूद नहीं हैं
प्रतिक्रिया: इंजेक्शन पर संकेत को अस्वीकार करें. यह कभी भी substrate में प्रवेश नहीं करता हैM SK2 प्रस्तावित घटक अधिसूचित किया जाता है और वैध प्रमाणों के साथ पुनः प्रयास कर सकता है
बहुत कम संकेत या नीति थ्रेसहोल्ड को पूरा करने के लिए अधिक असहमति
प्रतिक्रिया: एक निर्णायक आधाररेखा पर वापस आ जाएँ।
खुराक पर प्रमाण वैध था लेकिन बाद से समाप्त हो गया है।
प्रतिक्रियाकंसट्रेनरIsStillAuthorisedAndAvailableयह पकड़ता है।
सतह स्वयं उपलब्ध नहीं है
प्रतिक्रियासर्किट ब्रेकर
पैटर्न असफलताओं को रोक नहीं करता है ध्वनियुक्त, localised, और वसूली योग्य.
टीम निर्माण के लिए बहुल
ConstrainedSignal + EvidenceRefकिसी विशेषज्ञ के निर्माण से पहले )भाग 1: अवरोध व्यक्तिगत घटकों में उपयोगी व्यवहार बनाता है
भाग 2: साझा अवरोध घटकों के बीच सुसंगत व्यवहार बनाता है
सर्वसम्मति अंतरिक्ष मध्यप्रणाली नहीं है।
अनेक प्रस्तावक
मॉडल एक-दूसरे से बात नहीं करते।
भाग 1 एक मॉडल को प्रतिबंधित करता है
यह नियंत्रित धुंधला MoM है
भाग | पैटर्न |------|---------|------| | 1 | अवरोधित अस्पष्टता एकल घटक à¤à¥à¤°à¥à¤ | 3 | प्रतिबंधित अस्पष्ट संदर्भ खींचना समय
भाग 1 एक एकल संभाव्यात्मक घटक को निर्णायक सीमाओं के साथ प्रतिबंधित करता है
भाग 3 समय अक्ष के साथ इस वास्तुकला को विस्तारित करता है
© 2026 Scott Galloway — Unlicense — All content and source code on this site is free to use, copy, modify, and sell.