Il prend en charge la sortie de streaming à haut débit, plusieurs cycles de dialogue, la recherche en ligne, l'interprétation de documents longs, l'analyse d'images, le déploiement sans configuration, la prise en charge des jetons multicanaux et le nettoyage automatique des traces de session.
Entièrement compatible avec l'interface ChatGPT.
Il existe également les huit API gratuites suivantes auxquelles il faut prêter attention :
Interface Moonshot AI (Kimi.ai) avec l'API kimi-free-api
Interface Alibaba Tongyi (Qwen) avec l'API qwen-free-api
Interface Zhipu AI (Zhipu Qingyan) avec l'API glm-free-api
Interface Metaso AI (Metaso) avec l'API metaso-free-api
Interface iFlytek Spark vers l'API spark-free-api
Interface MiniMax (Conch AI) avec l'API hailuo-free-api
Interface DeepSeek avec l'API deepseek-free-api
Interface Listening Intelligence (Emohaa) avec l'API emohaa-free-api
L'API inversée est instable. Il est recommandé de se rendre sur Step Star Official https://platform.stepfun.com/ pour payer pour utiliser l'API afin d'éviter le risque d'être banni.
Cette organisation et ces individus n'acceptent aucun don ou transaction financière. Ce projet est purement destiné à la recherche, à l'échange et à l'apprentissage !
C'est pour un usage personnel uniquement, et il est interdit de fournir des services externes ou un usage commercial pour éviter de faire pression sur le service officiel, sinon c'est à vos risques et périls !
C'est pour un usage personnel uniquement, et il est interdit de fournir des services externes ou un usage commercial pour éviter de faire pression sur le service officiel, sinon c'est à vos risques et périls !
C'est pour un usage personnel uniquement, et il est interdit de fournir des services externes ou un usage commercial pour éviter de faire pression sur le service officiel, sinon c'est à vos risques et périls !
Ce lien n'est qu'une fonction de test temporaire et ne peut pas être utilisé pendant une longue période. Veuillez le déployer vous-même pour une utilisation à long terme.
https://udify.app/chat/RGqDVPHspgQgGSgf
Obtenez l'ID de périphérique et le jeton Oasis sur yuewen.cn
Entrez StepChat et démarrez une conversation, puis F12 pour ouvrir les outils de développement.
deviceId
dans Application > LocalStorage (supprimez les guillemets doubles), par exemple : 267bcc81a01c2032a11a3fc6ec3e372c380eb9d1
Oasis-Token
dans Application > Cookies, tel que : eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
@
pour fusionner deviceId
et Oasis-Token
en Token, qui sera utilisé comme valeur du jeton du porteur de l'autorisation : Authorization: Bearer 267bcc81a01c2032a11a3fc6ec3e372c380eb9d1@eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Vous pouvez fournir des jetons de rafraîchissement pour plusieurs comptes ,
les utiliser ensemble pour fournir :
Authorization: Bearer TOKEN1,TOKEN2,TOKEN3
L’un d’eux sera sélectionné à chaque demande du service.
Veuillez préparer un serveur avec une adresse IP publique et ouvrir le port 8000.
Tirez l'image et démarrez le service
docker run -it -d --init --name step-free-api -p 8000:8000 -e TZ=Asia/Shanghai vinlic/step-free-api:latest
Afficher les journaux de service en temps réel
docker logs -f step-free-api
Redémarrer le service
docker restart step-free-api
Arrêter le service
docker stop step-free-api
version : ' 3 '
services :
step-free-api :
container_name : step-free-api
image : vinlic/step-free-api:latest
restart : always
ports :
- " 8000:8000 "
environment :
- TZ=Asia/Shanghai
Remarque : Certaines zones de déploiement peuvent ne pas pouvoir se connecter à l'étape. Si la demande expire ou ne peut pas être connectée dans le journal du conteneur, veuillez passer à d'autres zones pour le déploiement ! Remarque : L'instance de conteneur du compte gratuit cessera automatiquement de s'exécuter après une période d'inactivité, ce qui entraînera un délai de 50 secondes ou plus lors de la prochaine requête. Il est recommandé de cocher Render containers keep Alive.
Forkez ce projet sur votre compte github.
Visitez Render et connectez-vous à votre compte github.
Créez votre service Web (Nouveau+ -> Créer et déployer à partir d'un référentiel Git -> Connectez votre projet forké -> Sélectionnez la zone de déploiement -> Sélectionnez le type d'instance comme Gratuit -> Créer un service Web).
Après avoir attendu la fin de la construction, copiez le nom de domaine attribué et collez l'URL pour y accéder.
Remarque : Le délai d'expiration de la réponse à la demande pour les comptes gratuits Vercel est de 10 secondes, mais la réponse de l'interface prend généralement plus de temps et vous pouvez rencontrer une erreur de délai d'attente 504 renvoyée par Vercel !
Veuillez vous assurer d'avoir d'abord installé l'environnement Node.js.
npm i -g vercel --registry http://registry.npmmirror.com
vercel login
git clone https://github.com/LLM-Red-Team/step-free-api
cd step-free-api
vercel --prod
Veuillez préparer un serveur avec une adresse IP publique et ouvrir le port 8000.
Veuillez installer l'environnement Node.js, configurer d'abord les variables d'environnement, puis confirmer que la commande node est disponible.
Installer les dépendances
npm i
Installez PM2 pour la protection des processus
npm i -g pm2
Compilez et construisez Lorsque vous voyez le répertoire dist, la construction est terminée.
npm run build
Démarrer le service
pm2 start dist/index.js --name " step-free-api "
Afficher les journaux de service en temps réel
pm2 logs step-free-api
Redémarrer le service
pm2 reload step-free-api
Arrêter le service
pm2 stop step-free-api
Il est plus rapide et plus facile d'utiliser le client de développement secondaire suivant pour accéder aux projets de la série d'API gratuites, et prend en charge le téléchargement de documents/images !
LobeChat développé par Clivia https://github.com/Yanyutin753/lobe-chat
ChatGPT Web https://github.com/SuYxh/chatgpt-web-sea développé par Guangguang@
Actuellement, l'interface /v1/chat/completions
compatible avec openai est prise en charge. Vous pouvez utiliser l'interface d'accès client compatible avec openai ou d'autres clients, ou utiliser des services en ligne tels que dify pour y accéder.
Interface de complétion de conversation, compatible avec l'api chat-completions-api d'openai.
POST /v1/chat/achèvements
l'en-tête doit définir l'en-tête Authorization :
Authorization: Bearer [refresh_token]
Demander des données :
{
// 模型名称随意填写
"model" : " step " ,
"messages" : [
{
"role" : " user " ,
"content" : "你是谁? "
}
],
// 如果使用SSE流请设置为true,默认false
"stream" : false
}
Données de réponse :
{
"id" : " 85466015488159744 " ,
"model" : " step " ,
"object" : " chat.completion " ,
"choices" : [
{
"index" : 0 ,
"message" : {
"role" : " assistant " ,
"content" : "我是跃问(StepChat),一个由阶跃星辰(StepFun)开发的多模态大模型。我可以回答您的问题,提供信息和帮助,同时支持多种模态的交互,如文字、图像等。如果您有任何问题或需要帮助,请随时向我提问。 "
},
"finish_reason" : " stop "
}
],
"usage" : {
"prompt_tokens" : 1 ,
"completion_tokens" : 1 ,
"total_tokens" : 2
},
"created" : 1711829974
}
Fournissez une URL de fichier accessible ou BASE64_URL à analyser.
POST /v1/chat/achèvements
l'en-tête doit définir l'en-tête Authorization :
Authorization: Bearer [refresh_token]
Demander des données :
{
// 模型名称随意填写
"model" : " step " ,
"messages" : [
{
"role" : " user " ,
"content" : [
{
"type" : " file " ,
"file_url" : {
"url" : " https://mj101-1317487292.cos.ap-shanghai.myqcloud.com/ai/test.pdf "
}
},
{
"type" : " text " ,
"text" : "文档里说了什么? "
}
]
}
]
}
Données de réponse :
{
"id" : " 85774360661086208 " ,
"model" : " step " ,
"object" : " chat.completion " ,
"choices" : [
{
"index" : 0 ,
"message" : {
"role" : " assistant " ,
"content" : "这是一个关于爱情魔法的文档。它包含了四个部分: nn 1. **PMG 4.1390 – 1495**:这是一个使用面包和咒语来吸引心仪女性的仪式。仪式中需要将面包分成七个小块,并在特定地点进行咒语的念诵和投掷。 n 2. **PMG 4.1342 – 57**:这是一个召唤恶魔来使一个名叫Tereous的女性受到折磨,直到她与一个名叫Didymos的人相爱并结合的咒语。 n 3. **PGM 4.1265 – 74**:这是关于如何赢得一个美丽的女人的咒语。它涉及到连续三天保持纯洁,向女神阿佛洛狄特(Aphrodite)供奉乳香,并在心中默念她的神秘名字。 n 4. **PGM 4.1496 – 1**:这是一个使用没药来吸引一个特定女性的咒语。这个咒语需要在煤上焚烧没药的同时念诵,目的是让这个女性心中只想着施咒者,并最终与施咒者相爱。 "
},
"finish_reason" : " stop "
}
],
"usage" : {
"prompt_tokens" : 1 ,
"completion_tokens" : 1 ,
"total_tokens" : 2
},
"created" : 1711903489
}
Fournissez une URL d'image accessible ou BASE64_URL à analyser.
Ce format est compatible avec le format API gpt-4-vision-preview, et vous pouvez également utiliser ce format pour transmettre des documents à analyser.
POST /v1/chat/achèvements
l'en-tête doit définir l'en-tête Authorization :
Authorization: Bearer [refresh_token]
Demander des données :
{
// 模型名称随意填写
"model" : " step " ,
"messages" : [
{
"role" : " user " ,
"content" : [
{
"type" : " image_url " ,
"image_url" : {
"url" : " https://k.sinaimg.cn/n/sinakd20111/106/w1024h682/20240327/babd-2ce15fdcfbd6ddbdc5ab588c29b3d3d9.jpg/w700d1q75cms.jpg "
}
},
{
"type" : " text " ,
"text" : "图像描述了什么? "
}
]
}
]
}
Données de réponse :
{
"id" : " 85773574417829888 " ,
"model" : " step " ,
"object" : " chat.completion " ,
"choices" : [
{
"index" : 0 ,
"message" : {
"role" : " assistant " ,
"content" : "这张图片展示了一个活动现场,似乎是某种新产品或技术的发布会。图片中央有一个大屏幕,上面写着“创新技术及产品首发”,屏幕上还展示了一些公司的标志或名称,如“RWKV”、“财跃星辰”、“阶跃星辰”、“商汤”和“零方科技”。在屏幕下方的舞台上,有几位穿着正装的人士正在进行互动,可能是在进行产品发布或演示。整个场景给人一种正式且科技感十足的印象。 "
},
"finish_reason" : " stop "
}
],
"usage" : {
"prompt_tokens" : 1 ,
"completion_tokens" : 1 ,
"total_tokens" : 2
},
"created" : 1711903302
}
Vérifiez si rafraîchir_token est vivant. Si live n'est pas vrai, sinon il est faux. Veuillez ne pas appeler cette interface fréquemment (moins de 10 minutes).
POST /jeton/chèque
Demander des données :
{
"token" : " 267bcc81a01c2032a11a3fc6ec3e372c380eb9d1@eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9... "
}
Données de réponse :
{
"live" : true
}
Si vous utilisez l'API step-free du proxy inverse Nginx, veuillez ajouter les éléments de configuration suivants pour optimiser l'effet de sortie du flux et optimiser l'expérience.
# 关闭代理缓冲。当设置为off时,Nginx会立即将客户端请求发送到后端服务器,并立即将从后端服务器接收到的响应发送回客户端。
proxy_buffering off ;
# 启用分块传输编码。分块传输编码允许服务器为动态生成的内容分块发送数据,而不需要预先知道内容的大小。
chunked_transfer_encoding on ;
# 开启TCP_NOPUSH,这告诉Nginx在数据包发送到客户端之前,尽可能地发送数据。这通常在sendfile使用时配合使用,可以提高网络效率。
tcp_nopush on ;
# 开启TCP_NODELAY,这告诉Nginx不延迟发送数据,立即发送小数据包。在某些情况下,这可以减少网络的延迟。
tcp_nodelay on ;
# 设置保持连接的超时时间,这里设置为120秒。如果在这段时间内,客户端和服务器之间没有进一步的通信,连接将被关闭。
keepalive_timeout 120 ;
Étant donné que le côté inférence n'est pas dans l'API step-free, le jeton ne peut pas être compté et sera renvoyé sous forme de nombre fixe !!!!!