学習時間からCEFRレベルを推定
指導付き学習750時間でCEFRのC1に届きます。学習時間と、あれば今のレベルを入力すると、到達した最高レベル、その一般的な時間の幅、次のレベルまでの残り時間が分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 時間
- 400
- 開始レベル
- A0
- 実効時間
- 400
- 到達可能なレベル
- B1
- 到達可能なレベルの名称
- B1 Threshold (independent user)
教室・個別指導・独学の時間を積み上げたとき、学習者はCEFRの階段をどこまで現実的に上れるでしょうか。講座案内は「中級になる」と述べ、試験団体はA1からC2までの指導時間帯を公表しますが、この二つの話が一つの透明な数字で交わることはほとんどありません。この学習時間からCEFRレベルを推定する計算機は、指導時間の合計をケンブリッジ流の累積帯に対応させ、その時間が根拠をもって支えられる最高レベル、次の帯までに残る時間、公表された典型範囲のどこに位置するかを示します。学年計画、家庭教師への共有、集中型と長期型の比較、診断テスト前に時間日記を配置仮説へ変換するときに使えます。
A1からC2までの標準指導時間帯
ヨーロッパ言語共通参照枠は言語能力を六つの公式レベルに整理します。A1とA2は基礎段階の言語使用者、B1とB2は自立した言語使用者、C1とC2は熟達した言語使用者です。これらのラベルは、その人が言語で何ができるかを述べるものであり、何時間学んだかを述べるものではありません。
しかしコース設計者は、暦の時間を到達可能な帯に変える計画用の代理指標を依然として必要とします。試験実施者と認定団体は、完全な初心者からの累積指導学習時間の幅をよく公表します。
A1まで約90から100時間、A2まで180から200時間、B1まで350から400時間、B2まで500から600時間、C1まで700から800時間、C2まで1000から1200時間です。本機能は各公表幅の下限を、そのレベルを妥当に主張できる閾値として扱います。
A1は90時間、A2は180時間、B1は350時間、B2は500時間、C1は700時間、C2は1000時間です。90時間未満は最初の公式帯に達していないため、A0(pre-A1とも呼ばれます)のままです。分類器は有効時間合計が満たす最も高い閾値を常に返すため、400時間はB1、750時間はC1に達します。
公表された典型上限(100、200、400、600、800、1200)は到達した帯の計画範囲として示され、次の公式閾値は次のレベルを開く数字のままです。これらの数値は教育的な計画アンカーであり、試験の合格点ではありません。同じ時間合計でも文法・語彙・技能は異なり得るため、結果は到達可能な帯の見積もりとして扱い、証明書そのものとしては扱わないでください。
学習計画、学校、製品連携
語学学校は、学期の接触時間を誠実な到達帯の主張に変えるために、学習時間からCEFRレベルを推定する計算機を使い、パンフレットに「一学期でB1」と刷る前に確認します。プログラム管理者は同じ閾値に両方の合計を通して集中型と長期型の暦を比べます。600時間はまだB2、700時間はすでにC1の計画主張を支えます。
検証失敗は残高を消費しません。数値が計画用の見積もりであることを利用者が理解できるよう、製品文言では公表閾値を固定してください。認定準備が必要なときは技能ベースの配置試験と組み合わせ、与えられた時間合計がどのCEFR帯を根拠をもって支えられるかという問いに答えるときに本ツールを使ってください。
よくある質問
指導学習時間400時間はどのCEFRレベルに達しますか?
この帯では初心者からの400時間はB1(閾値350)に達します。次の公式帯は500時間のB2なので、およそ100時間が残ります。
各CEFRレベルはどの時間閾値を使いますか?
公表された典型上限は 100、200、400、600、800、1200 です。90未満は A0 / pre-A1 のままです。
これらは公式の試験合格点ですか?
いいえ。 広く引用される指導学習時間の教育的計画帯であり、特定の証書のカットスコアではありません。認定準備が必要なときは技能ベースの配置試験を使ってください。
すでにレベルを持っている場合、時間はどう数えますか?
開始レベルを選ぶと、そのレベルの累積の基準時間に入力した時間を足して判定します。たとえばA2の後に200時間学ぶと実質380時間となり、B1に届きます。
結果のA0とは何ですか?
学習時間が最初の公式レベルA1の基準である90時間に届いていない状態で、pre-A1とも呼ばれます。開始レベルを指定しない場合の出発点でもあります。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/edu/cefr-by-hours \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"hours":400}'const res = await fetch("https://api.kit.forhosting.com/edu/cefr-by-hours", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"hours": 400
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/edu/cefr-by-hours",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"hours": 400
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/edu/cefr-by-hours", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"hours":400}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"hours":400}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/edu/cefr-by-hours", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"hours": 400
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "edu.cefr_by_hours",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
入力契約、開始レベル、応答の形
完全な初心者は A0、または大文字小文字を問わず A1、A2、B1、B2、C1、C2 です。開始レベルを指定すると、エンジンはそのレベルの累積閾値を送信時間に足して合計を分類します。A2の後に200時間を足すと有効時間は380時間となり、したがってB1です。C2に達したあとの次レベル群も同様です。追加の指導学習時間を表す必須の有限非負数 hours を含むJSON本体を送ってください。エイリアス study_hours、total_hours、guided_hours は同じフィールドに対応します。値はJSON数値でも、有限数に変換できる数字文字列でも構いません。負の合計、空文字列、非数値は invalid_input で失敗し、課金されません。任意で、すでに到達したCEFR帯として from_level を送れます。エイリアス current_level、start_level、from、current も受け付けます。from_level を省略すると既定は A0 となり、hours はゼロからの生涯合計として解釈されます。成功応答は hours と from_level を返し、effective_hours、reachable_level、reachable_label、閾値 hours_for_level、計画範囲 typical_min と typical_max、hours_into_band、1000時間のC2閾値に対する percent_of_c2、at_ceiling、各公式閾値と reached フラグを持つ bands 表、開始から到達帯までの path、さらに formula、message、番号付き steps を返します。到達レベルがまだC2でない場合は、next_level、hours_for_next、hours_to_next、現在帯内の百分率 progress_to_next も含まれます。任意フィールドは null ではなく省略されます。検証失敗は問題のフィールド名を示します。
学習計画、学校、製品連携
独学者はAnkiと授業の日記を一つの有効時間にまとめ、hours_to_next を読んで、あと80時間がまだB1の内側なのか、実際にB2を越えるのかを判断します。チューターは「中上級」という曖昧なラベルではなく共有の数字で初回面談を始め、from_level を最後に認定された帯に設定して、その証書以降の時間だけを数えられます。LMSプラグインやモバイル学習アプリは、アルゴリズムが参照と算術だけでありモデルトークンも外向き通信もないため、エッジワーカーから同じ parse エンドポイントを呼び出します。
連携の活用例
独学の時間日記
記録した指導時間の合計を到達可能なCEFR帯と具体的な hours_to_next に変換してから、配置や資格試験を予約します。
学校・チューター向け計画
学期の接触時間が支えられる帯を保護者に示し、from_level を最後の認定帯に設定して新規時間だけを数えます。
LMS・語学アプリのAPI
独自のCEFR時間表をホストせず、オンボーディングで指導時間合計を分類する決定的な parse エンドポイントを呼び出します。
技術的な質問
from_level は結果をどう変えますか?
from_level はすでに到達したCEFR帯です。送信した時間はその帯の累積閾値に加算されてから分類されます。A2の後の200時間は有効時間380時間となり、したがってB1です。
学習時間からCEFRレベルを推定する計算機の料金は?
ブラウザツールは無料です。APIリクエストは成功した呼び出しごとに前払いKIT残高から $0.002 です。無効な入力は課金されません。