first commit: one-api base code + SAAS plan document
This commit is contained in:
6
bin/migration_v0.2-v0.3.sql
Normal file
6
bin/migration_v0.2-v0.3.sql
Normal file
@@ -0,0 +1,6 @@
|
||||
UPDATE users
|
||||
SET quota = quota + (
|
||||
SELECT SUM(remain_quota)
|
||||
FROM tokens
|
||||
WHERE tokens.user_id = users.id
|
||||
)
|
||||
17
bin/migration_v0.3-v0.4.sql
Normal file
17
bin/migration_v0.3-v0.4.sql
Normal file
@@ -0,0 +1,17 @@
|
||||
INSERT INTO abilities (`group`, model, channel_id, enabled)
|
||||
SELECT c.`group`, m.model, c.id, 1
|
||||
FROM channels c
|
||||
CROSS JOIN (
|
||||
SELECT 'gpt-3.5-turbo' AS model UNION ALL
|
||||
SELECT 'gpt-3.5-turbo-0301' AS model UNION ALL
|
||||
SELECT 'gpt-4' AS model UNION ALL
|
||||
SELECT 'gpt-4-0314' AS model
|
||||
) AS m
|
||||
WHERE c.status = 1
|
||||
AND NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM abilities a
|
||||
WHERE a.`group` = c.`group`
|
||||
AND a.model = m.model
|
||||
AND a.channel_id = c.id
|
||||
);
|
||||
40
bin/time_test.sh
Normal file
40
bin/time_test.sh
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ $# -lt 3 ]; then
|
||||
echo "Usage: time_test.sh <domain> <key> <count> [<model>]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
domain=$1
|
||||
key=$2
|
||||
count=$3
|
||||
model=${4:-"gpt-3.5-turbo"} # 设置默认模型为 gpt-3.5-turbo
|
||||
|
||||
total_time=0
|
||||
times=()
|
||||
|
||||
for ((i=1; i<=count; i++)); do
|
||||
result=$(curl -o /dev/null -s -w "%{http_code} %{time_total}\\n" \
|
||||
https://"$domain"/v1/chat/completions \
|
||||
-H "Content-Type: application/json" \
|
||||
-H "Authorization: Bearer $key" \
|
||||
-d '{"messages": [{"content": "echo hi", "role": "user"}], "model": "'"$model"'", "stream": false, "max_tokens": 1}')
|
||||
http_code=$(echo "$result" | awk '{print $1}')
|
||||
time=$(echo "$result" | awk '{print $2}')
|
||||
echo "HTTP status code: $http_code, Time taken: $time"
|
||||
total_time=$(bc <<< "$total_time + $time")
|
||||
times+=("$time")
|
||||
done
|
||||
|
||||
average_time=$(echo "scale=4; $total_time / $count" | bc)
|
||||
|
||||
sum_of_squares=0
|
||||
for time in "${times[@]}"; do
|
||||
difference=$(echo "scale=4; $time - $average_time" | bc)
|
||||
square=$(echo "scale=4; $difference * $difference" | bc)
|
||||
sum_of_squares=$(echo "scale=4; $sum_of_squares + $square" | bc)
|
||||
done
|
||||
|
||||
standard_deviation=$(echo "scale=4; sqrt($sum_of_squares / $count)" | bc)
|
||||
|
||||
echo "Average time: $average_time±$standard_deviation"
|
||||
Reference in New Issue
Block a user