Modele
Dodaj endpoint zgodny z OpenAI lub Anthropic, podając bazowy URL i klucz API, jeśli jest wymagany. Sprawdź połączenie. Lokalny serwer modelu musi działać; zdalne narzędzia mogą przesyłać dane oddzielnie.
Odtwórz drzewo binarne z przejść preorder i inorder obejmujących do 100 różnych etykiet całkowitych.
def rebuild_tree(preorder, inorder):
for row in (preorder,inorder):
if type(row) not in (list,tuple) or len(row) > 100 or any(type(v) is not int for v in row):
raise ValueError("at most 100 integer nodes")
if len(set(preorder)) != len(preorder) or len(set(inorder)) != len(inorder) or set(preorder) != set(inorder):
raise ValueError("same distinct node labels")
positions, cursor = {v:i for i,v in enumerate(inorder)}, 0
def visit(lo,hi):
nonlocal cursor
if lo == hi: return None
value = preorder[cursor]; cursor += 1
at = positions[value]
if not lo <= at < hi: raise ValueError("inconsistent traversals")
left = visit(lo,at)
right = visit(at+1,hi)
return value,left,right
return visit(0,len(inorder))Dodaj endpoint zgodny z OpenAI lub Anthropic, podając bazowy URL i klucz API, jeśli jest wymagany. Sprawdź połączenie. Lokalny serwer modelu musi działać; zdalne narzędzia mogą przesyłać dane oddzielnie.
Sprawdź drzewa puste i jednostronne, odrzucając niespójne przejścia lub powtórzone etykiety bez zmiany wejść.
Porównaj rzeczywiste zachowanie z oczekiwanym wynikiem. Jeśli sprawdzenie się nie powiedzie, wyjaśnij przyczynę przed kolejnymi zmianami.
def rebuild_tree(preorder, inorder):
for row in (preorder,inorder):
if type(row) not in (list,tuple) or len(row) > 100 or any(type(v) is not int for v in row):
raise ValueError("at most 100 integer nodes")
if len(set(preorder)) != len(preorder) or len(set(inorder)) != len(inorder) or set(preorder) != set(inorder):
raise ValueError("same distinct node labels")
positions, cursor = {v:i for i,v in enumerate(inorder)}, 0
def visit(lo,hi):
nonlocal cursor
if lo == hi: return None
value = preorder[cursor]; cursor += 1
at = positions[value]
if not lo <= at < hi: raise ValueError("inconsistent traversals")
left = visit(lo,at)
right = visit(at+1,hi)
return value,left,right
return visit(0,len(inorder))Dane strukturalne mogą przejść podstawowe kontrole przynależności elementów, a mimo to nie opisywać poprawnej struktury. BranchSpire to środowisko programowania z AI dla Windows do analizy tej rozbieżności z dostępem do plików projektu. Zanim poprosisz o zmiany źródeł, rozpocznij rozmowę o kontrakcie danych wejściowych i obiekcie oczekiwanym przez kod wywołujący.
Konkretnym zadaniem jest przegląd rekonstrukcji na podstawie przejść preorder i inorder. Podaj małe poprawne drzewo oraz niespójną parę przejść, a potem poproś podłączony model o sprawdzenie, gdzie implementacja je rozróżnia. Określ wymóg odrębnych etykiet, aby proponowany kod nie zakładał po cichu unikatowości, której kod wywołujący nigdy nie zapewnił.
Przejrzyj zarówno otaczający interfejs, jak i logikę rekurencyjną. Zdecyduj, jak zgłaszać nieprawidłowe dane i czy wywołania zależą od konkretnej reprezentacji wyniku. Uruchom w projekcie przypadki pustego wejścia, pojedynczego węzła i nieprawidłowych kombinacji. Udany przykład pokazuje jedną ścieżkę; jawne przypadki odrzucenia pomagają ustalić granice akceptowanych danych.
BranchSpire łączy się z obsługiwanymi punktami końcowymi zgodnymi z OpenAI lub punktami Anthropic, z uwierzytelnianiem tam, gdzie jest wymagane. Możesz wybrać dostępny model AI po ablacji, natomiast jego serwer określa narzędzia i limity kontekstu. Korzystaj z tego połączenia, aby opracować i zakwestionować propozycję, a potem oceń różnice kodu i wyniki wykonania względem struktury wymaganej przez aplikację.
Kolejność przejść musi również opisywać spójną strukturę. Omawiając zadanie, uwzględnij nieprawidłową kolejność tych samych etykiet. Poproś model o wskazanie miejsca, w którym proponowana implementacja wykrywa tę niespójność.
Tylko jeśli kontrakt rekonstrukcji jawnie je obsługuje. Przykładowe zadanie zakłada odrębne etykiety. Przejrzyj wspólnie walidację i wywołania, aby świadomie odrzucać niejednoznaczne dane zamiast tworzyć strukturę na podstawie nieudokumentowanego założenia.
Określ reprezentację węzła, wartość pustego drzewa i kolejność dzieci oczekiwaną przez odbiorców. Matematycznie równoważne drzewo może zepsuć integrację, jeśli zmieni się jego reprezentacja. Sprawdź kod odbiorców przed akceptacją szerszej refaktoryzacji.
Podaj krótkie przypadki testowe o znanych wynikach i poproś o wyjaśnienie granic oraz ścieżek błędów. Przejrzyj rzeczywiste różnice źródeł, a następnie uruchom te przypadki narzędziami projektu. Nie polegaj na długiej narracji bez odpowiadających jej kontroli.
BranchSpire · Zaktualizowano 2026-10-25