PParityOchre
Không gian lập trình với AI

Sửa một bit Hamming

Giải mã từ Hamming bảy bit với giả định rõ ràng có tối đa một bit bị lật.

● ● ●ParityOchre●
Quy trình · Sửa một bit Hamming ×
def correct_hamming(word):
    word = list(word)
    if len(word) != 7 or any(type(b) is not int or b not in (0, 1) for b in word):
        raise ValueError("hamming.word")
    syndrome = 0
    for parity in (1, 2, 4):
        value = 0
        for position in range(1, 8):
            if position & parity:
                value ^= word[position-1]
        if value:
            syndrome |= parity
    if syndrome:
        word[syndrome-1] ^= 1
    data = (word[2] << 3) | (word[4] << 2) | (word[5] << 1) | word[6]
    return data, syndrome
✳Giải mã từ Hamming bảy bit với giả định rõ ràng có tối đa một bit bị lật.
✓ Thay đổiKiểm tra trước khi áp dụng ↗
Minh họa không gian làm việc
01

Kiểm tra trước khi áp dụng

So sánh hành vi thực tế với kết quả mong đợi. Nếu kiểm tra thất bại, tìm nguyên nhân trước khi sửa tiếp.

02

Mô hình

Cấu hình endpoint tương thích OpenAI hoặc Anthropic bằng URL cơ sở và khóa API nếu cần. Kiểm tra kết nối. Máy chủ mô hình cục bộ phải đang chạy; công cụ từ xa có thể truyền dữ liệu riêng.

03

Dự án

Kiểm tra từ nguyên vẹn và từng vị trí lỗi đơn, từ chối đầu vào sai dạng hoặc không nhị phân và không hứa phát hiện nhiều lỗi.

Quy trình

Sửa một bit Hamming

Quy trình ↗
Quy trình
def correct_hamming(word):
    word = list(word)
    if len(word) != 7 or any(type(b) is not int or b not in (0, 1) for b in word):
        raise ValueError("hamming.word")
    syndrome = 0
    for parity in (1, 2, 4):
        value = 0
        for position in range(1, 8):
            if position & parity:
                value ^= word[position-1]
        if value:
            syndrome |= parity
    if syndrome:
        word[syndrome-1] ^= 1
    data = (word[2] << 3) | (word[4] << 2) | (word[5] << 1) | word[6]
    return data, syndrome
Không gian lập trình với AI

Giữ mã thử nghiệm trung thực về các giả định vận hành

ParityOchre là không gian lập trình AI trên Windows để đưa một thử nghiệm kỹ thuật nhỏ thành thành phần phần mềm có giới hạn rõ ràng. Mở thư mục nguồn và mô tả điều kiện sử dụng kết quả. Yêu cầu mô hình kiểm tra cả phép tính và mã gọi, nhất là nơi đầu ra có thể được hiểu là bằng chứng khôi phục thành công.

Ví dụ, yêu cầu rà soát hamming.py với giả định lỗi một bit. Cung cấp một từ nguyên vẹn và một từ có một bit thay đổi, rồi nêu cách ứng dụng nên trình bày dữ liệu và syndrome trả về. Thảo luận riêng các lỗi ngoài giả định đó, thay vì để kết quả có vẻ hợp lý ngụ ý rằng mọi đầu vào hỏng đều đã được sửa.

Dùng sửa đổi đề xuất để xem xét giao diện quanh thử nghiệm. Kiểm tra độ dài đầu vào và giá trị bit, chạy dữ liệu kiểm thử độc lập trong môi trường của bạn và xem thông báo nơi sử dụng hiển thị. Đặt tên đầu ra rõ ràng rất quan trọng: ứng dụng cần truyền đạt điều thủ tục thực sự báo cáo mà không biến ví dụ có giới hạn thành tuyên bố độ tin cậy rộng hơn.

ParityOchre hỗ trợ kết nối mô hình qua điểm cuối tương thích OpenAI hoặc Anthropic, cùng thông tin xác thực khi cần. Mô hình AI không kiểm duyệt là lựa chọn khi được cung cấp, chịu các hạn chế của nhà cung cấp. Công cụ và ngữ cảnh khả dụng phụ thuộc mô hình và máy chủ đã chọn; bằng chứng từ dữ liệu kiểm thử vẫn cần thiết khi rà soát hành vi phần mềm đề xuất.

Câu hỏi về thử nghiệm khôi phục có giới hạn

Giá trị trả về có chứng minh từ đã được sửa không?

Chỉ trong các giả định đã xác lập cho thủ tục và đầu vào. Chỉ một giá trị dữ liệu có vẻ hợp lý không chứng minh sửa thành công hư hỏng bất kỳ. Rà soát cách ứng dụng mô tả kết quả để người dùng không nhận bảo đảm mạnh hơn điều thử nghiệm hỗ trợ.

Kiểm tra đầu vào cần bao quát gì?

Dùng độ dài từ kỳ vọng và giá trị bit được phép theo quy ước dự án. Bao gồm độ dài sai và phần tử không phải bit trong dữ liệu kiểm thử. Kiểm tra việc từ chối qua mã gọi nữa, vì ngoại lệ của hàm hỗ trợ chưa chắc là phản hồi ứng dụng hữu ích.

Tại sao cần kiểm thử các từ nguyên vẹn?

Chúng kiểm tra nhánh không thay đổi và ý nghĩa syndrome báo cáo khi không chỉ ra cần sửa. So sánh dữ liệu trích xuất với giá trị kỳ vọng độc lập. Chỉ thử ví dụ hỏng có thể bỏ sót lỗi xử lý đầu vào thông thường hoặc diễn giải đầu ra.

Tôi nên yêu cầu xử lý lỗi rộng hơn thế nào?

Nêu thêm các trường hợp lỗi và bằng chứng ứng dụng cần để phân biệt chúng. Xem đó là yêu cầu thiết kế mới thay vì bản vá nhỏ cho ví dụ hiện có. Rà soát giao diện và kiểm thử đề xuất trước khi cho rằng nó hỗ trợ bảo đảm khôi phục mạnh hơn.

Tải cho Windows ↗

ParityOchre · Cập nhật 2026-10-25