Gemini Embeddings에서 "Net::HTTPBadResponse" 오류 발생

저는 LLM으로 Gemini를 사용 중인데, 로그에서 많은 오류가 발생하고 있으며, 이는 임베딩 백필(backfill) 작업에서 비롯된 것으로 보입니다.

Job exception: Net::HTTPBadResponse

/var/www/discourse/plugins/discourse-ai/app/jobs/scheduled/embeddings_backfill.rb:122:in `populate_topic_embeddings’

위 아키텍처 다이어그램에 따르면 이 작업은 새 주제에만 실행되어야 하지만, 기존 주제에도 백필 작업이 실행되는 것으로 보입니다. 이 자체는 기존 주제에도 도움이 되므로 좋은 점입니다.

제가 명확히 하고 싶은 부분은 한도(limit)와 관련이 있습니다. Gemini가 분당 60회 쿼리로 제한된다면, 이 임계값(threshold)이 오류의 원인일 것으로 의심됩니다(이를 확인할 수 있는 방법이 있나요?).
임계값에 도달했을 때, Discourse가 잠시 후 실패한 주제의 임베딩을 재시도합니까? 그렇다면 얼마나 자주, 그리고 얼마나 오랫동안 재시도하나요? 재시도하지 않는 경우, 처리되지 않은 주제를 다시 처리하기 위해 관련 주제의 백필 작업을 수동으로 트리거할 수 있는 방법이 있나요?

1개의 좋아요

숨겨진 사이트 설정인 ai_embeddings_backfill_batch_size를 사용하여 백필(backfill) 속도를 조정할 수 있습니다. 무료 Gemini 한도에 맞게 50으로 설정할 수 있습니다.

2개의 좋아요

감사합니다. 방금 설정을 완료했는데, 앱 재시작이 필요하지 않을 것으로 추정합니다. 다른 모델들은 단계별 한도를 제공할 수 있다고 생각하므로, 이 설정을 AI 설정 페이지의 관리자 패널에 노출하는 것이 좋은 아이디어일 수 있습니다.

한도에 도달하거나 연결 오류나 인증 상실 등 어떤 이유로든 실패할 경우, AI 모듈이 개입 없이 미처리된 토픽을 백필하는 작업을 무한정 계속 시도한다고 가정해도 될까요?

2개의 좋아요

불행히도 그 방법이 효과가 없는 것 같습니다. 여전히 Job exception: Net::HTTPBadResponse 오류 수가 계속 증가하고 있습니다. 시스템을 재시작해 보았고, Rails에서 백필(Backfill) 배치 수가 50으로 설정되어 있는지 확인했습니다. 여기서 더 시도하거나 확인해 볼 수 있는 다른 방법이 있을까요?

네.

아래 명령어를 API 키와 함께 실행했을 때의 출력 결과는 무엇인가요?

curl https://generativelanguage.googleapis.com/v1beta/models/embedding-001:embedContent?key=API_KEY_GOES_HERE -H 'Content-Type: application/json'     -X POST     -d '{ "content": { "parts":[{ "text": "Why use Discourse for my online community?"}]}}' 
1개의 좋아요
{
  "embedding": {
    "values": [
      0.049835667,
      -0.053087797,
      -0.0026651944,
      -0.032271475,
      0.0008565384,
      0.012963673,
      0.04925958,
      0.02114348,
      0.017131783,
      0.07987728,
      0.00036036532,
      0.014957308,
      0.004499466,
      -0.031672746,
      0.045119844,
      -0.043746613,
      0.013044078,
      -0.015635632,
      -0.0034702981,
      0.00055249245,
      -0.043857947,
      -0.02738547,
      -0.0023206542,
      -0.043359935,
      0.018656434,
      -0.016405085,
      -0.025446353,
      -0.09162045,
      -0.009193362,
      0.030849759,
      -0.07839411,
      0.073293,
      -0.0053825686,
      -0.0059678303,
      -0.0006844548,
      -0.006315334,
      0.032252856,
      0.006667941,
      -0.027604295,
      0.05220841,
      -0.048274767,
      -0.029392688,
      -0.029355835,
      0.04653804,
      0.003945584,
      -0.043296136,
      -0.015069529,
      -0.023561781,
      0.029110815,
      -0.032166,
      0.04572339,
      0.029018285,
      0.048896253,
      -0.021334046,
      0.03946595,
      -0.0169248,
      0.016381577,
      -0.012894736,
      -0.05581367,
      -0.014831158,
      0.030060403,
      -0.008313037,
      -0.09008968,
      0.04903514,
      0.041317243,
      0.0027498198,
      -0.031350896,
      -0.0081006335,
      0.0390009,
      0.01456084,
      0.0315405,
      0.030226065,
      0.07349099,
      -0.052606054,
      -0.023721961,
      -0.053736396,
      -0.0710476,
      0.07822372,
      -0.0048553,
      -0.004152618,
      -0.0069499593,
      -0.03163849,
      -0.038669657,
      -0.03751683,
      -0.056960687,
      0.06533119,
      -0.057827037,
      0.01080756,
      0.017270816,
      0.034793865,
      -0.021642657,
      -0.01865893,
      -0.0056911353,
      -0.045503955,
      0.039082598,
      0.08366713,
      -0.007643605,
      -0.03659021,
      0.015616355,
      -0.003906713,
      -0.0076599843,
      -0.036598705,
      -0.01108682,
      -0.0069597336,
      0.05237777,
      0.06565515,
      0.027545689,
      0.06075108,
      -0.048622813,
      0.024223646,
      -0.071117215,
      0.034065973,
      -0.03702431,
      -0.017262084,
      0.010666043,
      -0.018599784,
      0.011046217,
      0.09575254,
      -0.010923603,
      -0.005287933,
      0.07443102,
      0.015511241,
      0.02358482,
      0.0038122602,
      0.0110562965,
      0.06479849,
      0.006115338,
      0.02237977,
      0.055337675,
      0.056075558,
      0.0025006428,
      -0.015629748,
      0.0009295725,
      0.053074196,
      0.08249292,
      0.06543386,
      0.019779298,
      0.0106866425,
      0.005572269,
      -0.0023958154,
      -0.0037621462,
      0.020007739,
      0.0139754675,
      0.00069694134,
      -0.06502769,
      0.022389991,
      -0.05675248,
      -0.04237161,
      0.0069264187,
      -0.043192238,
      -0.037506286,
      0.036144827,
      -0.04514279,
      0.00876093,
      0.041715626,
      -0.010649575,
      0.011852339,
      0.05341852,
      -0.012773308,
      -0.038706943,
      0.03152377,
      0.05521588,
      -0.00361507,
      -0.018567959,
      -0.012679102,
      -0.029120263,
      -0.026539568,
      0.00030241,
      -0.008183379,
      -0.03906954,
      -0.020941496,
      -0.0032074258,
      -0.026327813,
      -0.03912452,
      -0.027052578,
      -0.040369555,
      0.008954807,
      0.010244666,
      -0.0025794536,
      0.025502704,
      -0.07240107,
      -0.036659658,
      -0.010231007,
      0.016302444,
      0.042812273,
      -0.002724102,
      0.07421903,
      -0.10142466,
      -0.029415531,
      -0.043778807,
      0.016563682,
      -0.0270507,
      -0.000113599424,
      0.0033279394,
      -0.016658602,
      -0.021675194,
      0.05576477,
      0.06862853,
      -0.00652585,
      -0.01159096,
      0.012575702,
      0.10570678,
      0.054589298,
      -0.009304841,
      0.08004885,
      0.007919161,
      0.07728513,
      -0.041437797,
      -0.01067075,
      0.034822658,
      0.0018481511,
      -0.0014734427,
      0.0048331176,
      0.022597842,
      0.048678137,
      0.091887526,
      -0.020750577,
      0.019252019,
      0.030849814,
      -0.041854903,
      -0.014453777,
      -0.021936258,
      -0.014346192,
      0.0115072755,
      -0.052798618,
      0.04037987,
      0.0006653009,
      0.056538783,
      -0.007427154,
      -0.06047292,
      0.011042166,
      0.060032465,
      0.00742375,
      -0.034923185,
      0.040616427,
      0.010072564,
      -0.017704858,
      -0.039070953,
      -0.011488165,
      0.006652084,
      -0.041514922,
      0.03861204,
      0.013663087,
      0.08342337,
      -0.073423214,
      -0.0054284534,
      -0.0058582253,
      0.014006357,
      -0.0038960788,
      0.07571122,
      -0.0048305513,
      -0.031443343,
      0.052626867,
      0.0022661658,
      -0.08984796,
      0.0011647721,
      -0.035565842,
      -0.0049919626,
      -0.03326319,
      0.039390538,
      0.018988734,
      -0.041907478,
      0.01740078,
      -0.03847038,
      -0.018651431,
      -0.034888804,
      -0.02135333,
      -0.02415797,
      -0.005345686,
      0.027105553,
      -0.014054851,
      -0.047500543,
      0.09427313,
      -0.013695819,
      -0.01498477,
      0.053596623,
      0.012254832,
      0.04908039,
      -0.029091777,
      -0.07372432,
      0.0343596,
      0.02258552,
      -0.0071253153,
      -0.02386305,
      -0.0057186238,
      -0.03323554,
      -0.029094461,
      -0.032949373,
      0.059173636,
      -0.046209954,
      -0.015498728,
      -0.024551516,
      0.011513828,
      -0.061083652,
      -0.02237468,
      -0.0049111806,
      -0.012389059,
      0.028721081,
      0.04778319,
      0.0073474767,
      -0.0065232418,
      -0.014830325,
      -0.028026134,
      -0.0653796,
      0.019258047,
      0.024961341,
      0.03533581,
      -0.030846452,
      0.06656185,
      -0.015825864,
      0.027694814,
      -0.017256135,
      0.010215107,
      0.0050955433,
      0.01311972,
      0.037823886,
      -0.026694939,
      0.050253987,
      -0.002114194,
      0.06720399,
      0.019737212,
      0.030683005,
      -0.016445823,
      0.023714663,
      0.025072183,
      0.01696251,
      -0.029809875,
      0.012283688,
      0.0008943514,
      -0.00018241217,
      -0.031002654,
      0.030267857,
      0.01593443,
      0.02385287,
      -0.023456587,
      -0.0017674654,
      -0.069804,
      0.042437166,
      -0.0074308217,
      0.071244255,
      0.014429643,
      0.006895311,
      0.01402888,
      -0.065092355,
      -0.0110172685,
      0.013090774,
      -0.008232141,
      0.0068813222,
      0.059676517,
      0.050064728,
      0.016562462,
      0.06436298,
      -0.045705132,
      0.009147997,
      0.0068886406,
      -0.028144563,
      0.040914834,
      -0.030774482,
      0.032046646,
      -0.06756744,
      -0.087018155,
      0.032553025,
      -0.013287733,
      0.006165214,
      0.027844446,
      -0.0454315,
      0.0007838677,
      -0.02824797,
      -0.012193629,
      0.0052360683,
      0.026328225,
      -0.031589665,
      0.031567544,
      -5.823923e-05,
      -0.025981033,
      -0.057981066,
      -0.023402635,
      -0.016856203,
      0.016395364,
      -0.007495069,
      -0.04980727,
      -0.013136656,
      0.011539791,
      0.039624084,
      0.029931411,
      0.008295852,
      -0.0052006287,
      0.027126353,
      0.041326083,
      -0.030452484,
      0.023171015,
      0.027159497,
      0.061324485,
      -0.013437325,
      0.026905138,
      -0.015175969,
      0.001190477,
      -0.03296332,
      0.03607256,
      -0.021430602,
      -0.00838613,
      -0.03176932,
      -0.03841174,
      -0.005889474,
      -0.031237358,
      -0.029592663,
      -0.009253579,
      -0.027543431,
      -0.013652089,
      -0.0122762155,
      -0.0051506646,
      0.030370936,
      0.034951918,
      -0.025405152,
      0.00054425595,
      -0.009923217,
      0.025618095,
      -0.025864856,
      0.048924446,
      0.032274988,
      0.02552666,
      -0.06287375,
      0.03265969,
      0.028939355,
      0.012768615,
      -0.060623392,
      -0.06054021,
      -0.018593578,
      0.01658346,
      0.009148355,
      0.032717086,
      0.025887506,
      0.005102726,
      -0.024044968,
      0.015867848,
      -0.06985226,
      0.022473859,
      0.029198112,
      -0.022219934,
      -0.015967099,
      0.046363156,
      -0.033796955,
      0.019713182,
      -0.03798754,
      -0.047272854,
      -0.0033509203,
      0.0046040253,
      -0.018489538,
      0.039789207,
      -0.040447205,
      0.042606983,
      -0.07086798,
      -0.029225757,
      -0.074334815,
      -0.011229469,
      -0.07036015,
      0.028998882,
      0.031645387,
      -0.054167435,
      -0.011917344,
      -0.054065116,
      -0.039588124,
      -0.036324322,
      -0.082037084,
      -0.01200532,
      0.019225745,
      0.024985975,
      -0.0042101457,
      0.0127587365,
      0.04495904,
      -0.017835576,
      -0.0057440917,
      -0.002545832,
      -0.0440076,
      0.017551765,
      -0.0010223053,
      -0.084200606,
      0.026969673,
      -0.023898808,
      -0.010268309,
      0.039836444,
      -0.016278664,
      0.0067669223,
      0.00091878435,
      0.01744076,
      -0.036685348,
      -0.028350586,
      -0.0075139287,
      -0.04298965,
      0.03240625,
      0.013864248,
      -0.020742482,
      -0.02164198,
      -0.0614275,
      -0.021606905,
      0.07318286,
      -0.0147202425,
      0.009992278,
      0.018593978,
      0.029263247,
      -0.013064598,
      -0.029978039,
      0.003842346,
      -0.059589136,
      0.04579801,
      -0.005114194,
      0.035829544,
      0.0035099334,
      0.00045971398,
      -0.01986417,
      -0.05324282,
      0.018024689,
      0.020279268,
      -0.015164831,
      0.038371563,
      -0.025026957,
      -0.0076083476,
      0.008192915,
      0.011792553,
      0.014137991,
      0.0051719313,
      0.01869812,
      -0.09118679,
      0.011270221,
      0.008047813,
      -0.07419907,
      0.06346611,
      0.049479857,
      -0.06060518,
      0.03438583,
      0.0153429685,
      0.07922743,
      -0.03877446,
      0.006707378,
      -0.008108458,
      -0.046597168,
      0.0054507926,
      0.021386953,
      -0.009807047,
      0.020110589,
      0.012233969,
      0.015837837,
      0.0037049693,
      0.039532676,
      0.017257283,
      0.00886057,
      0.034195136,
      -0.09243383,
      0.053717166,
      -0.0021029164,
      -0.06875445,
      -0.0071924697,
      0.03108134,
      -0.04563619,
      -0.00083774194,
      0.014210709,
      -0.060640357,
      0.04132176,
      0.009436319,
      0.026991349,
      -0.019189715,
      -0.014624527,
      -0.018609596,
      -0.003482946,
      0.027900012,
      0.06637678,
      -0.0012586409,
      -0.038126424,
      0.02849398,
      -0.018801333,
      -0.0042140875,
      -0.00043351148,
      -0.013043814,
      -0.0074874135,
      0.13473365,
      -0.044178527,
      -0.01403677,
      0.00055984996,
      -0.0036781211,
      -0.00014187745,
      -0.010651638,
      0.017360387,
      -0.04366142,
      0.052630052,
      -0.040490936,
      -0.0036669776,
      -0.010526219,
      -0.008558216,
      0.04945971,
      -0.0064618,
      -0.026096895,
      0.03528522,
      0.017515585,
      0.048792165,
      0.012806723,
      0.013030134,
      -0.0066259233,
      0.0021932635,
      -0.01601817,
      0.008459671,
      0.051649842,
      -0.044286244,
      0.050648786,
      -0.021836527,
      0.031767294,
      0.009081719,
      0.039486963,
      -0.031478874,
      -0.005295293,
      0.02604293,
      -0.011712433,
      0.0026289816,
      -0.02771389,
      -0.05880322,
      0.008625529,
      -0.038586393,
      -0.00060886715,
      0.022293508,
      0.01962499,
      -0.039559986,
      0.012422695,
      0.017097618,
      0.0042233826,
      0.016124574,
      0.06400231,
      0.01013828,
      0.0019418234,
      0.0025327099,
      0.06797062,
      -0.01639999,
      0.019147225,
      0.077511005,
      0.04300279,
      -0.0011224708,
      -0.02281973,
      -0.0041384688,
      -0.031457845,
      0.034441024,
      -0.017100282,
      -0.042244416,
      -0.059911303,
      0.020320196,
      0.016682073,
      -0.026526595,
      -0.013109187,
      0.046623614,
      0.03522876,
      -0.07020897,
      -0.0027858827,
      0.0012248874,
      -0.019706104,
      4.449175e-05,
      -0.01676711,
      0.013618695,
      0.016751442,
      0.052337922,
      0.016704846,
      -0.039870158,
      -0.009210376,
      -0.016101042,
      -0.053912774,
      -0.01030838,
      -0.0014928665,
      -0.03861485,
      -0.02639443,
      -0.031236589,
      -0.0367676,
      -0.04256473,
      -0.034367092,
      -0.0015953152,
      -0.039764587,
      0.03163281,
      0.10080723,
      -0.0064988043,
      0.024672346,
      0.039612733,
      -0.051571015,
      0.014494058,
      -0.022822127,
      -0.05607827,
      0.0045406506,
      -0.029270528,
      -0.03174555,
      -0.00014189756,
      -0.010326455,
      0.021104474,
      -0.018238109,
      0.01693558,
      -0.042893708,
      -0.0066386843,
      0.0029949849,
      -0.029824559,
      -0.07980172,
      0.009837255,
      0.042697694,
      0.021210462,
      0.006992767,
      -0.012153643,
      -0.018022908,
      0.06730532,
      0.0097185755,
      -0.010519779,
      -0.03515423,
      0.041359305,
      -0.04106254,
      0.042712715,
      -0.011240963,
      0.019320335,
      0.038198043,
      -0.002018983,
      -0.019421624,
      -0.012232834,
      -0.03197243,
      0.042729717,
      0.0016120019,
      -0.023235232,
      0.019547952,
      0.0061417874,
      -0.0031949624,
      0.029037619,
      0.09187076,
      0.03527133,
      0.03177622,
      -0.03131322,
      -0.057029262,
      0.037499532,
      -0.076599635,
      -0.010948816,
      -0.010056306,
      -0.049771722,
      0.08908218,
      -0.046434876,
      -0.009427074,
      0.08589484,
      -0.020439578,
      0.022801418,
      0.029852122,
      0.009927706,
      -0.046594735,
      -0.019958388,
      0.0062652137,
      -0.00026330803,
      -0.008028819,
      0.064202406,
      0.0025747651,
      0.012016399,
      0.06299626,
      0.010334369,
      -0.0014274095,
      -0.022009145,
      -0.056092076,
      0.02973419,
      0.05777413,
      0.05728468,
      0.056977335,
      -0.029541055,
      -0.009398629,
      -0.004829944,
      -0.038161278,
      0.056747198,
      -0.029851086,
      -0.016171122,
      0.017964598,
      0.039172452,
      0.020577038,
      0.022588894,
      -0.024253663,
      0.028916452
    ]
  }
}

@Falco 여기 무슨 일이 일어나고 있는지 의견이 있나요? 에러가 멈추지 않는 것 같아요.

Gemini Embeddings API의 요청 본문(request body)에 10KB라는 하드 리미트가 있다는 사실을 알게 되었습니다. 2048 토큰 한도를 지키더라도 이 제한을 초과할 수 있습니다 :facepalm:

이 PR을 통해 문제를 수정할 예정입니다.

4개의 좋아요

네, 관리자 업그레이드 패널에서 Discourse 플러그인을 업데이트했습니다. 불행히도 여전히 오류가 발생합니다:

Message (1397 copies reported)

Job exception: Net::HTTPBadResponse


Backtrace

/var/www/discourse/plugins/discourse-ai/lib/inference/gemini_embeddings.rb:17:in `perform!'
/var/www/discourse/plugins/discourse-ai/lib/embeddings/vector_representations/gemini.rb:46:in `vector_from'
/var/www/discourse/plugins/discourse-ai/lib/embeddings/vector_representations/base.rb:178:in `generate_representation_from'
/var/www/discourse/plugins/discourse-ai/app/jobs/scheduled/embeddings_backfill.rb:125:in `block in populate_topic_embeddings'
/var/www/discourse/plugins/discourse-ai/app/jobs/scheduled/embeddings_backfill.rb:122:in `each'
/var/www/discourse/plugins/discourse-ai/app/jobs/scheduled/embeddings_backfill.rb:122:in `populate_topic_embeddings'
/var/www/discourse/plugins/discourse-ai/app/jobs/scheduled/embeddings_backfill.rb:36:in `execute'
/var/www/discourse/app/jobs/base.rb:297:in `block (2 levels) in perform'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/rails_multisite-5.0.0/lib/rails_multisite/connection_management.rb:82:in `with_connection'
/var/www/discourse/app/jobs/base.rb:284:in `block in perform'
1개의 좋아요

이 방법으로 제 설치 환경의 문제가 해결되었습니다. PR이 병합된 이후로 업데이트를 하셨는지, 그리고 그 변경 사항이 병합된 이후에 발생한 에러인지 확인해 주실 수 있을까요?

음, 지난밤에 Admin Upgrade 패널에서 업데이트를 진행했습니다. 현재 이 상태가 표시되고 있습니다:

PR 커밋은 aabff87을 가리키고 있습니다.

사용자분의 커밋은 이 커밋에서 4개 뒤에 있는 a1f1067인데, discourse는 플러그인이 최신 상태라고 표시하고 있습니다. 머신을 재시작해 보았지만 여전히 플러그인이 최신 상태라고 나옵니다.

브랜치를 변경해야 하나요? discourse에 플러그인의 최신 커밋을 설치하도록 강제하는 방법은 무엇인가요?

혹시 stable 브랜치로 Discourse를 실행 중이신가요? 그렇게 하면 플러그인이 오래된 커밋에 고정됩니다. AI 플러그인을 stable과 함께 사용하는 것은 권장하지 않습니다. 움직이는 부분이 많아서 새로운 코어 훅이 필요하기 때문입니다.

4개의 좋아요

tests-passed로 이동한 후 모든 플러그인이 업그레이드되고 문제가 해결된 것 같습니다.

과거에 tests-passed 채널에서 겪은 문제들로 인해 서버 다운타임이 발생하여, 어느 시점부터 stable 채널로 전환해야 했습니다. 솔직히 tests-passed 채널을 사용하려면 관리자가 상당히 숙련되어 있어야 하며, 문제 발생 시(예: 제가 겪은 SMTP TLS 문제 등) 디버깅과 직접적인 문제 해결에 능숙해야 합니다. 이 채널은 설치 후 방치해 둘 수 있는 채널이 아닙니다.

하지만 이 새로운 AI 플러그인들을 사용하려면 tests-passed 채널에 있어야 한다는 점을 충분히 이해합니다. 정말 훌륭한 작업입니다! 더 깊이 탐구하고 싶습니다.

게시물이 새 주제로 분리되었습니다: Sentiment Backfill Rake Task에서 오류 발생