TTickFable
Робоче середовище з ШІ для коду

Строгі записи тривалості

Розберіть ціле число ASCII із суфіксом ms, s, m або h у мілісекунди з межею одна доба.

● ● ●TickFable●
Сценарії · Строгі записи тривалості ×
import re

def duration_ms(text):
    if not isinstance(text, str):
        raise ValueError("duration.text")
    match = re.fullmatch(r"(0|[1-9][0-9]{0,8})(ms|s|m|h)", text)
    if not match:
        raise ValueError("duration.syntax")
    result = int(match[1]) * {"ms": 1, "s": 1000, "m": 60000, "h": 3600000}[match[2]]
    if result > 86400000:
        raise ValueError("duration.range")
    return result
✳Розберіть ціле число ASCII із суфіксом ms, s, m або h у мілісекунди з межею одна доба.
✓ ЗміниПеревірте перед застосуванням ↗
Ілюстрація робочого середовища
Перевірте перед застосуваннямПорівняйте фактичну поведінку з очікуваним результатом. Якщо перевірка не проходить, з’ясуйте причину перед наступними змінами.
МоделіНалаштуйте OpenAI-сумісний або Anthropic endpoint із базовою URL-адресою та API-ключем, якщо він потрібен. Перевірте з’єднання. Локальний сервер моделі має працювати; віддалені інструменти можуть окремо передавати дані.
ПроєктПеревірте нуль і добову межу, відхиляючи початкові нулі, дроби, пробіли й невідомі одиниці.
Сценарії

Строгі записи тривалості

Сценарії ↗
Сценарії
import re

def duration_ms(text):
    if not isinstance(text, str):
        raise ValueError("duration.text")
    match = re.fullmatch(r"(0|[1-9][0-9]{0,8})(ms|s|m|h)", text)
    if not match:
        raise ValueError("duration.syntax")
    result = int(match[1]) * {"ms": 1, "s": 1000, "m": 60000, "h": 3600000}[match[2]]
    if result > 86400000:
        raise ValueError("duration.range")
    return result
Робоче середовище з ШІ для коду

Перетворіть неоднозначну тривалість на чітке завдання програмування

Параметр, який приймає тривалість, потребує політики, на яку можуть покладатися користувачі й код викликів. TickFable надає середовище програмування з ШІ у Windows для опрацювання цієї політики в коді. Відкрийте проєкт, визначте парсер параметра та його споживача й поясніть, які дані мають прийматися, перед запитом зміни до підключеної моделі.

Один приклад завдання приймає ціле число в ASCII, після якого йде ms, s, m або h, перетворює його на мілісекунди й обмежує результат однією добою. Обговоріть, чи входять пробіли, дроби та початкові нулі до допустимої граматики. Ці рішення пов’язують парсер із поведінкою продукту; вони не повинні виникати випадково з виразу, який запропонує модель.

Перевірте запропоновану правку за короткою таблицею приймання з власних вимог. Перевірте нуль, межу доби й одне значення понад неї, потім випробуйте повідомлення застосунку для відхилених даних. Запустіть перевірки у своєму наявному середовищі. Корисний результат — узгоджений контракт параметра від введення тексту до збереженого значення, а не лише парсер, що розпізнає успішний випадок.

TickFable підключається до підтримуваних кінцевих точок, сумісних з OpenAI, або Anthropic, з обліковими даними за потреби. Одним із доступних варіантів може бути модель ШІ без обмежень. Її модифікація не визначає вашу граматику й не встановлює точності валідації; місткість контексту, інструменти й обмеження визначаються обраними моделлю та сервером.

Питання перед зміною введення тривалості

Як представити допустимі й відхилені записи?

Надайте малу таблицю точних рядків та очікуваних результатів, включно з регістром і пробілами. Додайте підтримувані параметром одиниці. Це полегшує перевірку правки й усуває залежність від неформального опису на кшталт «зрозуміла людині тривалість».

Де перевіряти обмеження однією добою?

Попросіть модель перевірити перетворення розібраної величини на одиницю, яку використовує застосунок. Перевірка має підтвердити застосування межі до перетвореного значення. Випробуйте еквівалентні граничні значення в різних підтримуваних одиницях тестами проєкту.

Чи має парсер автоматично обрізати пробіли?

Лише якщо це частина вимоги. Приклад суворої граматики відхиляє пробіли. Укажіть у розмові, чи інтерфейс навмисно нормалізує дані перед розбором, а потім перевірте цю межу, щоб різний код виклику не трактував те саме значення неузгоджено.

Що ще важливо після прийняття запису?

Перевірте зберігання й використання перетвореної тривалості кодом виклику та повідомлення про відхилення. Правильний парсер усе ще може передати таймеру неправильну одиницю. Залишайте споживача в межах завдання й перевірте спостережувану поведінку застосунку.

Завантажити для Windows ↗

TickFable · Оновлено 2026-10-25