内積計算機
同じ次元の2つのベクトルを入力すると、内積とそれぞれの長さ、なす角が分かります。[1, 2, 3] と [4, −5, 6] なら内積は12で、なす角は鋭角です。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 1つ目のテキスト
- 1, 2, 3
- 2つ目のテキスト
- 4, -5, 6
- N
- 3
- 内積
- 12
- ノルム a
- 3.7416573868
- ノルム b
- 8.7749643874
内積計算機は、同じ長さの2本のベクトルをスカラー a·b、各ベクトルのユークリッド長、なす角のコサイン、およびラジアンと度の両方での角度に変換します。ベクトル a とベクトル b を同じ次元の有限数の配列として入力してください。ツールは成分ごとの積を合計し、ノルムのために平方根を取り、クランプしたコサインに arccos を適用して浮動小数点誤差が無効な角度を作らないようにします。零ベクトルは角度を未定義にするため、その場合も拒否されます。経路は純粋な決定的算術です。
内積と角度の意味
ベクトルのユークリッドノルムは自己内積の平方根なので、|a| は a·a の平方根、|b| は b·b の平方根です。幾何学的定義では a·b は |a| と |b| と cos θ の積に等しく、両ノルムが厳密に正のとき θ は (a·b) を (|a||b|) で割った値の arccos に並び替えられます。
教員、グラフィックスプログラマ、機械学習の実務者はこの恒等式を重視します。投影、照明法線、コサイン類似度、メッシュの2辺が垂直であることの確認の基礎だからです。本ツールは関係を直交、同方向平行、逆方向平行、鋭角、鈍角のいずれかとしてラベル付けし、しきい値を自分で導かずに向きを主張できます。
長さの不一致はハードエラーです。積の和は各成分に相手があるときにだけ定義され、零で埋めると幾何学的意味が変わり呼び出し側の形状バグを隠します。
実務のヒント、制限、関連検索
呼び出す前に両ベクトルを同じ長さに保ってください。元データが末尾の零を落とすことがあるなら、黙った埋め込みに頼らず上流で形状を直します。クライアントを制御できるときは整形済み文字列より数値配列を優先し、文字列形式は各トークンが厳密な有限数パターンに合うときだけ受け付けます。
ほぼ直交の浮動小数結果は丸め後もわずかに零から外れることがあります。テスト用の厳密な直角が必要なら [1, 0] と [0, 1] のような正確な整数を使ってください。教えるときは古典例を組み合わせます。[
数値成分が既にあり a·b と θ が必要なときにこの能力を選び、文章題なら先に2つの座標リストを取り出してください。
活用例
グラフィックス・物理コードの単体テスト
直交・鋭角・鈍角・平行の既知良好ペアと、長さ不一致の意図的拒否を生成し、ゲームエンジンや物理エンジンの期待値に使います。
パイプラインでのコサイン類似度の事前確認
データジョブが埋め込み長の一致を検証し、スカラー積と角度を計算し、クラスタリング・順位付け・照明計算の前に relation で分岐します。
よくある質問
ベクトルの長さが異なるとどうなりますか?
成分ごとの和は両ベクトルが同じ次元を共有するときだけ定義されます。
ベクトル間の角度はどう計算されますか?
θ = arccos( (a·b) / (|a||b|) ) で、cos θ は浮動小数の安全のため [-1, 1] にクランプされます。結果はラジアンと度で返ります。
2つのベクトルの内積はどう計算しますか?
同じ位置にある成分どうしを掛けて、その結果を足し合わせます。[1, 2, 3] と [4, −5, 6] なら 4 − 10 + 18 で、内積は12になります。
内積が0になるのはどういう意味ですか?
2つのベクトルが垂直で、直角をなしていることを意味します。計算機はこれを直交と表示し、鋭角か鈍角か、平行かどうかも教えてくれます。
零ベクトルが受け付けられないのはなぜですか?
零ベクトルには向きがないため、ほかのベクトルとのなす角が定まらないからです。でたらめな角度を出す代わりに、この場合は受け付けません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/algebra/dot-product \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":[1,2,3],"b":[4,-5,6]}'const res = await fetch("https://api.kit.forhosting.com/algebra/dot-product", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": [
1,
2,
3
],
"b": [
4,
-5,
6
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/algebra/dot-product",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": [
1,
2,
3
],
"b": [
4,
-5,
6
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/algebra/dot-product", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":[1,2,3],"b":[4,-5,6]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":[1,2,3],"b":[4,-5,6]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/algebra/dot-product", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"a": [
1,
2,
3
],
"b": [
4,
-5,
6
]
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "algebra.dot_product",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_abs | 1000000000000 |
max_dim | 1000 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
2本の長さが異なる場合、API は黙って埋めたり切り詰めたりせず、明確な invalid_input エラーを返します。これは形状バグが誤った角度として隠れる場面で、宿題チェッカー、グラフィックスパイプライン、単体テストが必要とする動作です。ネットワークも乱数シードも壁時計依存もなく、無料のブラウザ実行器と前払い API は固定12桁丸めの後、毎回同じ JSON を返します。
内積と角度の意味
同じ次元 n の2つの実ベクトル a と b について、内積は i が1から n までの a_i と b_i の積の和です。この単一の実数は、ベクトルが鋭角をなすとき正、直交(垂直)のとき零、鈍角のとき負になります。
API の呼び出し方と返り値
各々は有限数の空でない配列、または角括弧付きやカンマ・空白区切りの有限数リストとして解析される文字列でなければなりません。次元は正確に一致し、1000成分を超えてはいけません。必須フィールド a(別名 u、vector_a、vec1)と b(別名 v、vector_b、vec2)を持つ JSON 本体を送ってください。各成分の絶対値は1兆以内に収め、中間の平方和が Worker とブラウザの IEEE 倍精度で有限に保たれるようにします。成功時、応答は丸めた a と b をエコーし、n を共有長、dot_product を丸めたスカラー和、magnitude_a と magnitude_b を丸めたユークリッド長、cosine をクランプした cos θ、angle_rad と angle_deg を両単位の角度、relation を5つの向きラベルの1つ、formula を定義恒等式の文字列、message を短い要約、steps をワークシート表示やテスト断言に使える代入行の順序付き配列に設定します。失敗した検証(欠落フィールド、非配列入力、空ベクトル、長さ不一致、非有限成分、絶対限界外、公開最大次元超過、零ノルム、非有限中間結果)は invalid_input を返し課金されません。価格は成功リクエストごとに固定 $0.002、単位 item、限界単価は零です。
実務のヒント、制限、関連検索
1, 2, 3] と [4, −5, 6] は符号混在の積と和に応じた鋭角・鈍角、[1, 0] と [0, 1] は純直交デモ、[1, 2] と [2, 4] は同方向平行、[1, 2] 対 [1, 2, 3] は長さ不一致の invalid_input 経路です。このページは内積計算機、2ベクトルのなす角、座標リストのコサイン類似度を探す人向けであり、3次元でベクトルを返す外積ツールでも、行列乗算サービスでも、記号コンピュータ代数系でもありません。invalid_input を返す失敗タスクは前払い残高を消費しないため、学習者が意図的に長さをずらす探索スクリプトを安く保てます。往復確認は容易です。 手で積の和を再計算し、ポケット計算機でノルムを確認し、公開の12桁丸めの範囲で angle_deg が約180/π 倍の angle_rad であることを検証します。
連携の活用例
ベクトル幾何の宿題チェック
学生が教科書演習の2つの座標リストを入力し、手計算の a·b、|a|、|b|、θ を決定的な JSON 結果と照合してから提出します。
技術的な質問
2本のベクトルの内積とは何ですか?
同じ長さのベクトル a と b について、a·b は各成分の a_i と b_i の積の和です。幾何学的には |a||b|cos θ に等しくなります。
どちらかのベクトルが零ベクトルでもよいですか?
角度経路では不可です。零ノルムは cos θ を未定義にするため、API は零ベクトルを invalid_input で拒否します。
内積計算機は無料ですか?
ブラウザツールは無料でローカル実行です。API 呼び出しは成功リクエストごとに $0.002 の前払い KIT 残高を使い、失敗は課金されません。