[{"data":1,"prerenderedAt":439},["ShallowReactive",2],{"docs-/ko/docs/rate-limits":3},{"id":4,"title":5,"body":6,"description":432,"extension":433,"meta":434,"navigation":163,"path":435,"seo":436,"stem":437,"__hash__":438},"content/ko/docs/rate-limits.md","속도 제한 - Seedance 2.0 API",{"type":7,"value":8,"toc":425},"minimark",[9,14,18,23,35,127,131,136,353,357,386,390,398,402,421],[10,11,13],"h1",{"id":12},"속도-제한","속도 제한",[15,16,17],"p",{},"속도 제한은 API를 보호하고 모든 사용자에게 공정한 사용을 보장합니다.",[19,20,22],"h2",{"id":21},"속도-제한-처리","속도 제한 처리",[15,24,25,26,30,31,34],{},"속도 제한을 초과하면 API는 ",[27,28,29],"code",{},"rate_limit_error","와 함께 ",[27,32,33],{},"429"," 상태 코드를 반환합니다:",[36,37,42],"pre",{"className":38,"code":39,"language":40,"meta":41,"style":41},"language-json shiki shiki-themes github-dark","{\n    \"error\": {\n        \"code\": 429,\n        \"message\": \"Rate limit exceeded\",\n        \"type\": \"rate_limit_error\",\n        \"fallback_suggestion\": \"retry after 60 seconds\"\n    }\n}\n","json","",[27,43,44,53,63,77,91,104,115,121],{"__ignoreMap":41},[45,46,49],"span",{"class":47,"line":48},"line",1,[45,50,52],{"class":51},"s95oV","{\n",[45,54,56,60],{"class":47,"line":55},2,[45,57,59],{"class":58},"sDLfK","    \"error\"",[45,61,62],{"class":51},": {\n",[45,64,66,69,72,74],{"class":47,"line":65},3,[45,67,68],{"class":58},"        \"code\"",[45,70,71],{"class":51},": ",[45,73,33],{"class":58},[45,75,76],{"class":51},",\n",[45,78,80,83,85,89],{"class":47,"line":79},4,[45,81,82],{"class":58},"        \"message\"",[45,84,71],{"class":51},[45,86,88],{"class":87},"sU2Wk","\"Rate limit exceeded\"",[45,90,76],{"class":51},[45,92,94,97,99,102],{"class":47,"line":93},5,[45,95,96],{"class":58},"        \"type\"",[45,98,71],{"class":51},[45,100,101],{"class":87},"\"rate_limit_error\"",[45,103,76],{"class":51},[45,105,107,110,112],{"class":47,"line":106},6,[45,108,109],{"class":58},"        \"fallback_suggestion\"",[45,111,71],{"class":51},[45,113,114],{"class":87},"\"retry after 60 seconds\"\n",[45,116,118],{"class":47,"line":117},7,[45,119,120],{"class":51},"    }\n",[45,122,124],{"class":47,"line":123},8,[45,125,126],{"class":51},"}\n",[19,128,130],{"id":129},"권장-재시도-전략","권장 재시도 전략",[15,132,133,135],{},[27,134,33],{}," 응답을 받았을 때 지수 백오프를 구현하세요:",[36,137,141],{"className":138,"code":139,"language":140,"meta":41,"style":41},"language-python shiki shiki-themes github-dark","import time\nimport requests\n\ndef make_request_with_retry(url, headers, payload, max_retries=3):\n    for attempt in range(max_retries):\n        response = requests.post(url, headers=headers, json=payload)\n\n        if response.status_code == 429:\n            wait_time = 2 ** attempt * 30  # 30s, 60s, 120s\n            print(f\"Rate limited. Retrying in {wait_time}s...\")\n            time.sleep(wait_time)\n            continue\n\n        return response\n\n    raise Exception(\"Max retries exceeded\")\n","python",[27,142,143,152,159,165,186,203,229,233,250,276,306,312,318,323,332,337],{"__ignoreMap":41},[45,144,145,149],{"class":47,"line":48},[45,146,148],{"class":147},"snl16","import",[45,150,151],{"class":51}," time\n",[45,153,154,156],{"class":47,"line":55},[45,155,148],{"class":147},[45,157,158],{"class":51}," requests\n",[45,160,161],{"class":47,"line":65},[45,162,164],{"emptyLinePlaceholder":163},true,"\n",[45,166,167,170,174,177,180,183],{"class":47,"line":79},[45,168,169],{"class":147},"def",[45,171,173],{"class":172},"svObZ"," make_request_with_retry",[45,175,176],{"class":51},"(url, headers, payload, max_retries",[45,178,179],{"class":147},"=",[45,181,182],{"class":58},"3",[45,184,185],{"class":51},"):\n",[45,187,188,191,194,197,200],{"class":47,"line":93},[45,189,190],{"class":147},"    for",[45,192,193],{"class":51}," attempt ",[45,195,196],{"class":147},"in",[45,198,199],{"class":58}," range",[45,201,202],{"class":51},"(max_retries):\n",[45,204,205,208,210,213,217,219,222,224,226],{"class":47,"line":106},[45,206,207],{"class":51},"        response ",[45,209,179],{"class":147},[45,211,212],{"class":51}," requests.post(url, ",[45,214,216],{"class":215},"s9osk","headers",[45,218,179],{"class":147},[45,220,221],{"class":51},"headers, ",[45,223,40],{"class":215},[45,225,179],{"class":147},[45,227,228],{"class":51},"payload)\n",[45,230,231],{"class":47,"line":117},[45,232,164],{"emptyLinePlaceholder":163},[45,234,235,238,241,244,247],{"class":47,"line":123},[45,236,237],{"class":147},"        if",[45,239,240],{"class":51}," response.status_code ",[45,242,243],{"class":147},"==",[45,245,246],{"class":58}," 429",[45,248,249],{"class":51},":\n",[45,251,253,256,258,261,264,266,269,272],{"class":47,"line":252},9,[45,254,255],{"class":51},"            wait_time ",[45,257,179],{"class":147},[45,259,260],{"class":58}," 2",[45,262,263],{"class":147}," **",[45,265,193],{"class":51},[45,267,268],{"class":147},"*",[45,270,271],{"class":58}," 30",[45,273,275],{"class":274},"sAwPA","  # 30s, 60s, 120s\n",[45,277,279,282,285,288,291,294,297,300,303],{"class":47,"line":278},10,[45,280,281],{"class":58},"            print",[45,283,284],{"class":51},"(",[45,286,287],{"class":147},"f",[45,289,290],{"class":87},"\"Rate limited. Retrying in ",[45,292,293],{"class":58},"{",[45,295,296],{"class":51},"wait_time",[45,298,299],{"class":58},"}",[45,301,302],{"class":87},"s...\"",[45,304,305],{"class":51},")\n",[45,307,309],{"class":47,"line":308},11,[45,310,311],{"class":51},"            time.sleep(wait_time)\n",[45,313,315],{"class":47,"line":314},12,[45,316,317],{"class":147},"            continue\n",[45,319,321],{"class":47,"line":320},13,[45,322,164],{"emptyLinePlaceholder":163},[45,324,326,329],{"class":47,"line":325},14,[45,327,328],{"class":147},"        return",[45,330,331],{"class":51}," response\n",[45,333,335],{"class":47,"line":334},15,[45,336,164],{"emptyLinePlaceholder":163},[45,338,340,343,346,348,351],{"class":47,"line":339},16,[45,341,342],{"class":147},"    raise",[45,344,345],{"class":58}," Exception",[45,347,284],{"class":51},[45,349,350],{"class":87},"\"Max retries exceeded\"",[45,352,305],{"class":51},[19,354,356],{"id":355},"모범-사례","모범 사례",[358,359,360,366,373,376],"ul",{},[361,362,363,365],"li",{},[27,364,33],{}," 응답에 대해 지수 백오프를 구현하세요",[361,367,368,369,372],{},"빈번한 폴링 대신 ",[27,370,371],{},"callback_url"," (webhooks)을 사용하여 요청량을 줄이세요",[361,374,375],{},"한꺼번에 요청을 보내지 말고 생성 요청 간격을 두세요",[361,377,378,385],{},[379,380,384],"a",{"href":381,"rel":382},"https://evolink.ai/dashboard/billing",[383],"nofollow","EvoLink 대시보드","에서 크레딧 사용량을 모니터링하세요",[19,387,389],{"id":388},"더-높은-제한이-필요하신가요","더 높은 제한이 필요하신가요?",[15,391,392,393,397],{},"맞춤형 속도 제한과 전용 인프라에 대해서는 ",[379,394,396],{"href":395},"/enterprise","영업팀에 문의하세요",".",[19,399,401],{"id":400},"관련-문서","관련 문서",[358,403,404,411],{},[361,405,406,410],{},[379,407,409],{"href":408},"/docs/error-codes","오류 코드"," -- 모든 오류 유형 처리",[361,412,413,417,418,420],{},[379,414,416],{"href":415},"/docs/webhooks","Webhooks"," -- ",[27,419,371],{},"로 폴링 줄이기",[422,423,424],"style",{},"html pre.shiki code .s95oV, html code.shiki .s95oV{--shiki-default:#E1E4E8}html pre.shiki code .sDLfK, html code.shiki .sDLfK{--shiki-default:#79B8FF}html pre.shiki code .sU2Wk, html code.shiki .sU2Wk{--shiki-default:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html pre.shiki code .snl16, html code.shiki .snl16{--shiki-default:#F97583}html pre.shiki code .svObZ, html code.shiki .svObZ{--shiki-default:#B392F0}html pre.shiki code .s9osk, html code.shiki .s9osk{--shiki-default:#FFAB70}html pre.shiki code .sAwPA, html code.shiki .sAwPA{--shiki-default:#6A737D}",{"title":41,"searchDepth":55,"depth":55,"links":426},[427,428,429,430,431],{"id":21,"depth":55,"text":22},{"id":129,"depth":55,"text":130},{"id":355,"depth":55,"text":356},{"id":388,"depth":55,"text":389},{"id":400,"depth":55,"text":401},"Seedance 2.0 API의 속도 제한을 이해하고 속도 제한을 적절하게 처리하는 방법을 알아봅니다.","md",{},"/ko/docs/rate-limits",{"title":5,"description":432},"ko/docs/rate-limits","zrRC4CjwWV1PdTl-dR5QEq7lsIIrMYKokZHyVzuaSSs",1775067575283]