CChainArbor
KI-Arbeitsumgebung für Code

Kostenplanung für Matrixketten

Bestimme die kleinste Anzahl skalarer Multiplikationen für eine Kette aus höchstens 12 Matrizen.

● ● ●ChainArbor●
Arbeitsabläufe · Kostenplanung für Matrixketten ×
def chain_cost(dimensions):
    if type(dimensions) not in (list, tuple) or not 2 <= len(dimensions) <= 13:
        raise ValueError("one through twelve matrices")
    if any(type(d) is not int or not 1 <= d <= 1000 for d in dimensions):
        raise ValueError("dimensions 1 through 1000")
    n = len(dimensions)-1
    cost = [[0]*n for _ in range(n)]
    for width in range(2, n+1):
        for left in range(n-width+1):
            right = left+width-1
            cost[left][right] = min(
                cost[left][k]+cost[k+1][right]+
                dimensions[left]*dimensions[k+1]*dimensions[right+1]
                for k in range(left,right))
    return cost[0][n-1]
✳Bestimme die kleinste Anzahl skalarer Multiplikationen für eine Kette aus höchstens 12 Matrizen.
✓ ÄnderungenVor dem Anwenden prüfen ↗
Illustration der Arbeitsumgebung
ProjektPrüfe eine Matrix und verschiedene Klammerungen und lehne Dimensionen außerhalb 1 bis 1000 ab, ohne Matrixeinträge zu multiplizieren.
Vor dem Anwenden prüfenVergleichen Sie das tatsächliche Verhalten mit dem erwarteten Ergebnis. Klären Sie fehlgeschlagene Prüfungen vor weiteren Änderungen.
ModelleRichten Sie einen OpenAI-kompatiblen oder Anthropic-Endpunkt mit Basis-URL und gegebenenfalls API-Schlüssel ein. Testen Sie die Verbindung. Ein lokaler Modellserver muss laufen; entfernte Werkzeuge können Daten separat übertragen.
Arbeitsabläufe

Kostenplanung für Matrixketten

Arbeitsabläufe ↗
Arbeitsabläufe
def chain_cost(dimensions):
    if type(dimensions) not in (list, tuple) or not 2 <= len(dimensions) <= 13:
        raise ValueError("one through twelve matrices")
    if any(type(d) is not int or not 1 <= d <= 1000 for d in dimensions):
        raise ValueError("dimensions 1 through 1000")
    n = len(dimensions)-1
    cost = [[0]*n for _ in range(n)]
    for width in range(2, n+1):
        for left in range(n-width+1):
            right = left+width-1
            cost[left][right] = min(
                cost[left][k]+cost[k+1][right]+
                dimensions[left]*dimensions[k+1]*dimensions[right+1]
                for k in range(left,right))
    return cost[0][n-1]
KI-Arbeitsumgebung für Code

Berechneten Plan und dargestellte Arbeit auseinanderhalten

ChainArbor bietet für die rechnergestützte Planung einen Programmierarbeitsbereich für Windows, in dem Sie Annahmen mit einem verbundenen Modell besprechen können. Klären Sie zunächst, was eine Planungsfunktion tatsächlich zurückgibt und wer dies verwendet. Eine Kostenschätzung, eine Ausführungsreihenfolge und eine ausgeführte Operation sind unterschiedliche Ausgaben; eine hilfreiche Änderungsanforderung benennt diesen Unterschied ausdrücklich.

Die Kostenplanung für Matrixketten ist die mitgelieferte Beispielaufgabe. Sie könnten den Assistenten bitten, die Dimensionsvalidierung und die ausgegebenen Rechenkosten zu prüfen, bevor Sie die umgebende Anwendung erweitern. Beziehen Sie den aufrufenden Code und dessen Erwartungen ein, damit eine vorgeschlagene Änderung minimale Kosten nicht versehentlich als Multiplikationsreihenfolge oder fertiges Matrixergebnis darstellt.

Nutzen Sie das Gespräch, um diese Schnittstellenentscheidungen sichtbar zu machen, und prüfen Sie anschließend die resultierenden Quelltextänderungen. Kontrollieren Sie kurze Dimensionsfolgen mit unabhängig ermittelten Kosten einschließlich des Falls einer einzigen Matrix und führen Sie die projekteigenen Tests aus. Wenn Sie später einen Ausführungsplan anfordern, behandeln Sie dessen Darstellung und Überprüfung als zusätzliche Anforderungen, statt sie aus einer Kostenberechnung abzuleiten.

Verbinden Sie für die Auswahl ungefilterter KI-Modelle einen unterstützten OpenAI-kompatiblen oder Anthropic-Dienst, der das gewünschte Modell anbietet. Zugangsdaten, Werkzeugunterstützung und Kontextgrenzen hängen von dieser Einrichtung ab. Der Arbeitsbereich setzt Anbieterbeschränkungen nicht außer Kraft; er hilft, vorgeschlagene Planungsänderungen mit überprüfbarem Quelltext und Abnahmekriterien zu verbinden.

Fragen zum Umfang des Planungscodes

Was soll ich anfordern, wenn ich eine Ausführungsreihenfolge brauche?

Fordern Sie eine ausdrückliche Darstellung der Reihenfolge an und beschreiben Sie, wie der aufrufende Code sie verwenden wird. Eine Funktion, die minimale Rechenkosten ausgibt, erzeugt diese Darstellung möglicherweise nicht. Liefern Sie Prüfbeispiele sowohl für den Plan als auch für dessen ausgegebene Kosten.

Warum eine Kette mit nur einer Matrix testen?

Sie legt das Basisverhalten fest, wenn keine Multiplikation nötig ist. Nehmen Sie diesen Fall neben einem kleinen Beispiel mit mehreren Matrizen auf, damit der Vorschlag des Assistenten sowohl am Grenzfall als auch an der Planungslogik längerer Ketten geprüft wird.

Kann der Arbeitsbereich tatsächliche numerische Matrixergebnisse verifizieren?

Verwenden Sie dafür die numerischen Werkzeuge und Tests Ihres Projekts. Der Programmierarbeitsbereich unterstützt die Diskussion und Prüfung vorgeschlagener Änderungen; ein korrekter Kostentestfall belegt nicht, dass eine separate Multiplikationsimplementierung korrekte Werte liefert.

Wie verhindere ich, dass ein Kosten-Refactoring die Schnittstelle erweitert?

Geben Sie den aktuellen Rückgabetyp und das erforderliche Verhalten des aufrufenden Codes an. Prüfen Sie den Diff auf neue Ausgaben oder geänderte Einheiten. Ist ein umfassenderer Plan erwünscht, definieren Sie ihn als bewussten Folgeschritt statt als beiläufiges Refactoring.

Für Windows herunterladen ↗

ChainArbor · Aktualisiert 2026-10-25