[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"me":3,"catalog:en:ai-engineer\u002Fllm-fundamentals":4,"config":193},null,{"field_key":5,"field_name":6,"seniority":7,"topic_key":8,"topic_name":9,"spec_key":7,"spec_name":7,"locale":10,"cell_total":11,"field_total":12,"seniorities":13,"topics":17,"specs":97,"samples":108},"ai-engineer","AI Engineer","","llm-fundamentals","Llm Fundamentals","en",75,2025,[14,15,16],"junior","mid","senior",[18,21,24,27,30,33,36,39,42,45,48,51,54,57,60,63,66,69,70,73,76,79,82,85,88,91,94],{"key":19,"name":20,"count":11},"agents-tool-use","Agents Tool Use",{"key":22,"name":23,"count":11},"aimlops-deployment-strategies-ml","Aimlops Deployment Strategies Ml",{"key":25,"name":26,"count":11},"aimlops-experiment-tracking-reproducibility","Aimlops Experiment Tracking Reproducibility",{"key":28,"name":29,"count":11},"aimlops-feature-store-data-versioning","Aimlops Feature Store Data Versioning",{"key":31,"name":32,"count":11},"aimlops-ml-cicd-pipelines","Aimlops Ml Cicd Pipelines",{"key":34,"name":35,"count":11},"aimlops-model-monitoring-drift-detection","Aimlops Model Monitoring Drift Detection",{"key":37,"name":38,"count":11},"aimlops-model-versioning-registry","Aimlops Model Versioning Registry",{"key":40,"name":41,"count":11},"aipy-async-concurrency-ml-serving","Aipy Async Concurrency Ml Serving",{"key":43,"name":44,"count":11},"aipy-data-pipeline-dataloader","Aipy Data Pipeline Dataloader",{"key":46,"name":47,"count":11},"aipy-gpu-memory-management","Aipy Gpu Memory Management",{"key":49,"name":50,"count":11},"aipy-numpy-vectorization-broadcasting","Aipy Numpy Vectorization Broadcasting",{"key":52,"name":53,"count":11},"aipy-python-ml-packaging-environments","Aipy Python Ml Packaging Environments",{"key":55,"name":56,"count":11},"aipy-tensor-ops-autograd","Aipy Tensor Ops Autograd",{"key":58,"name":59,"count":11},"embeddings-vector-search","Embeddings Vector Search",{"key":61,"name":62,"count":11},"evaluation-testing","Evaluation Testing",{"key":64,"name":65,"count":11},"fine-tuning-adaptation","Fine Tuning Adaptation",{"key":67,"name":68,"count":11},"inference-serving","Inference Serving",{"key":8,"name":9,"count":11},{"key":71,"name":72,"count":11},"prompt-engineering","Prompt Engineering",{"key":74,"name":75,"count":11},"rag-chunking-indexing","Rag Chunking Indexing",{"key":77,"name":78,"count":11},"rag-embeddings-similarity","Rag Embeddings Similarity",{"key":80,"name":81,"count":11},"rag-evaluation","Rag Evaluation",{"key":83,"name":84,"count":11},"rag-generation-context","Rag Generation Context",{"key":86,"name":87,"count":11},"rag-reranking-fusion","Rag Reranking Fusion",{"key":89,"name":90,"count":11},"rag-retrieval","Rag Retrieval",{"key":92,"name":93,"count":11},"rag-retrieval-search","Rag Retrieval Search",{"key":95,"name":96,"count":11},"safety-guardrails","Safety Guardrails",[98,102,105],{"key":99,"name":100,"count":101},"llm-rag","LLM\u002FRAG",450,{"key":103,"name":104,"count":101},"mlops","MLOps",{"key":106,"name":107,"count":101},"python","Python",[109,127,141,154,167,180],{"id":110,"topic":9,"difficulty":111,"body":112,"options":113,"correct_key":121,"explanation":126},"019f5912-4626-76a7-97a3-91d1315a83e8",1,"In large language models, what is a 'token'?",[114,117,120,123],{"key":115,"text":116},"a","A parameter stored inside the model's neural network weights, adjusted during training",{"key":118,"text":119},"b","A single English word, where each individual word always maps to exactly one token",{"key":121,"text":122},"c","A unit of text, such as a word, subword piece, or character sequence, processed as one item",{"key":124,"text":125},"d","A unique identifier the API assigns to each user session for tracking purposes","A token is the basic unit a tokenizer splits text into, which can be a whole word, part of a word, punctuation, or even a single character depending on the vocabulary. Tokens are not guaranteed to align with whole words, and they have nothing to do with session identifiers or model weight parameters.",{"id":128,"topic":9,"difficulty":129,"body":130,"options":131,"correct_key":118,"explanation":140},"019f5912-4629-765f-b4bf-fefbeb85c30f",2,"A developer notices that the same sentence produces a different number of tokens depending on whether it's written in English or in a language with many compound or agglutinative words. What best explains this?",[132,134,136,138],{"key":115,"text":133},"All tokenizers guarantee exactly one token per word, regardless of the language or its vocabulary",{"key":118,"text":135},"Tokenizers split text using patterns learned from their vocabulary, so token counts can vary by language",{"key":121,"text":137},"Token count depends only on the total number of characters, never on the tokenizer's vocabulary design",{"key":124,"text":139},"This kind of behavior is always a bug that should be reported to the model provider immediately","A tokenizer's vocabulary is built from statistics over its training data, so languages with more compounding or unfamiliar subwords often get split into more, smaller tokens than a comparable English sentence. This is expected tokenizer behavior, not a bug or a purely character-count function.",{"id":142,"topic":9,"difficulty":111,"body":143,"options":144,"correct_key":124,"explanation":153},"019f5912-462a-703d-a283-4ae164b46067","What is a model's 'context window'?",[145,147,149,151],{"key":115,"text":146},"The number of conversation turns a single user account is allowed to have per day",{"key":118,"text":148},"The number of parallel requests the API infrastructure can serve at the same time",{"key":121,"text":150},"The amount of GPU memory that was allocated for the model's original training run overall",{"key":124,"text":152},"The maximum number of tokens the model can attend to in one request, input plus output","The context window is a hard limit on how many tokens (prompt plus generated output) the model can process together in one call; beyond it, older or excess content must be dropped. It is unrelated to request concurrency, training-time GPU memory, or daily usage quotas.",{"id":155,"topic":9,"difficulty":129,"body":156,"options":157,"correct_key":124,"explanation":166},"019f5912-462a-7685-a15c-b2efaa67e89c","An application sends a long document plus a question to a model, and the combined token count exceeds the model's context window. What is the most likely outcome?",[158,160,162,164],{"key":115,"text":159},"The model automatically writes a background summary of the input before answering",{"key":118,"text":161},"The model processes everything normally without any issue, simply taking somewhat longer to respond",{"key":121,"text":163},"The API silently raises the context window limit just for that one request",{"key":124,"text":165},"The request fails, or the input gets truncated and meaningful content may be dropped","Exceeding the context window typically causes an error response or forces truncation of the input, which can silently cut off important parts of the document or the question. The context window is a fixed constraint per request; it isn't automatically summarized or expanded on the fly.",{"id":168,"topic":9,"difficulty":129,"body":169,"options":170,"correct_key":121,"explanation":179},"019f5912-462a-7ef5-b496-6d279b85b449","A developer assumes that because a model has a large context window, it will 'remember' details from a completely separate conversation started in a brand-new session. Why is this assumption usually wrong?",[171,173,175,177],{"key":115,"text":172},"Context windows are shared globally across every user and every account using the same model",{"key":118,"text":174},"Large context windows are disabled by default and must be manually enabled for each new session",{"key":121,"text":176},"The context window only covers tokens included in the current request and doesn't persist across separate sessions",{"key":124,"text":178},"The model automatically queries an internal database of prior sessions before responding to a request","A large context window only means more tokens can fit into one request — it does not give the model any built-in memory of past sessions. Any continuity across sessions has to come from the application explicitly resending prior history or retrieved context, not from the model itself.",{"id":181,"topic":9,"difficulty":111,"body":182,"options":183,"correct_key":115,"explanation":192},"019f5912-462e-706f-b965-9f081bcd5cc7","A team wants a model to produce the exact same output for the exact same input as consistently as possible, prioritizing repeatability over varied phrasing. Which decoding approach best fits this goal?",[184,186,188,190],{"key":115,"text":185},"Greedy decoding, always picking the single highest-probability next token",{"key":118,"text":187},"High-temperature sampling, to explore a wide range of possible tokens",{"key":121,"text":189},"Increasing top-p toward its maximum value to widen the candidate pool",{"key":124,"text":191},"Randomly sampling among a fairly large set of top-ranked tokens at each generation step","Greedy decoding always selects the most probable next token, which maximizes consistency across repeated calls. Higher temperature, a wider top-p, or random sampling from a broad candidate set all deliberately introduce variation, working against the goal of repeatable output.",{"fields":194,"seniorities":372,"interview_shapes":373,"locales":378,"oauth":380,"question_count":383,"coach_enabled":384,"jd_match_enabled":384},[195,218,238,255,279,286,305,324,346,353,359,366],{"key":196,"name_tr":197,"name_en":197,"sort":111,"specializations":198},"backend","Backend",[199,202,205,206,209,212,215],{"key":200,"name":201,"field":196},"general","Genel",{"key":203,"name":204,"field":196},"go","Go",{"key":106,"name":107,"field":196},{"key":207,"name":208,"field":196},"java","Java",{"key":210,"name":211,"field":196},"csharp","C#\u002F.NET",{"key":213,"name":214,"field":196},"nodejs","Node.js",{"key":216,"name":217,"field":196},"php","PHP",{"key":219,"name_tr":220,"name_en":220,"sort":129,"specializations":221},"frontend","Frontend",[222,223,226,229,232,235],{"key":200,"name":201,"field":219},{"key":224,"name":225,"field":219},"javascript","JavaScript",{"key":227,"name":228,"field":219},"typescript","TypeScript",{"key":230,"name":231,"field":219},"react","React",{"key":233,"name":234,"field":219},"vue","Vue",{"key":236,"name":237,"field":219},"angular","Angular",{"key":239,"name_tr":240,"name_en":240,"sort":241,"specializations":242},"fullstack","Fullstack",3,[243,244,245,246,247,248,249,250,251,252,253,254],{"key":200,"name":201,"field":239},{"key":203,"name":204,"field":196},{"key":106,"name":107,"field":196},{"key":207,"name":208,"field":196},{"key":210,"name":211,"field":196},{"key":213,"name":214,"field":196},{"key":216,"name":217,"field":196},{"key":224,"name":225,"field":219},{"key":227,"name":228,"field":219},{"key":230,"name":231,"field":219},{"key":233,"name":234,"field":219},{"key":236,"name":237,"field":219},{"key":256,"name_tr":257,"name_en":257,"sort":258,"specializations":259},"devops-cloud","DevOps \u002F Cloud",4,[260,261,264,267,270,273,276],{"key":200,"name":201,"field":256},{"key":262,"name":263,"field":256},"aws","AWS",{"key":265,"name":266,"field":256},"gcp","GCP",{"key":268,"name":269,"field":256},"azure","Azure",{"key":271,"name":272,"field":256},"kubernetes","Kubernetes",{"key":274,"name":275,"field":256},"terraform","Terraform",{"key":277,"name":278,"field":256},"linux","Linux",{"key":5,"name_tr":6,"name_en":6,"sort":280,"specializations":281},5,[282,283,284,285],{"key":200,"name":201,"field":5},{"key":106,"name":107,"field":5},{"key":99,"name":100,"field":5},{"key":103,"name":104,"field":5},{"key":287,"name_tr":288,"name_en":289,"sort":290,"specializations":291},"database","Veritabanı","Database",6,[292,293,296,299,302],{"key":200,"name":201,"field":287},{"key":294,"name":295,"field":287},"postgresql","PostgreSQL",{"key":297,"name":298,"field":287},"mysql","MySQL",{"key":300,"name":301,"field":287},"mongodb","MongoDB",{"key":303,"name":304,"field":287},"redis","Redis",{"key":306,"name_tr":307,"name_en":308,"sort":309,"specializations":310},"mobile","Mobil","Mobile",7,[311,312,315,318,321],{"key":200,"name":201,"field":306},{"key":313,"name":314,"field":306},"ios-swift","iOS (Swift)",{"key":316,"name":317,"field":306},"android-kotlin","Android (Kotlin)",{"key":319,"name":320,"field":306},"flutter","Flutter",{"key":322,"name":323,"field":306},"react-native","React Native",{"key":325,"name_tr":326,"name_en":327,"sort":328,"specializations":329},"security","Güvenlik","Security",8,[330,331,334,337,340,343],{"key":200,"name":201,"field":325},{"key":332,"name":333,"field":325},"appsec","AppSec",{"key":335,"name":336,"field":325},"offensive-pentest","Offensive \u002F Pentest",{"key":338,"name":339,"field":325},"cloud-security","Cloud Security",{"key":341,"name":342,"field":325},"devsecops","DevSecOps",{"key":344,"name":345,"field":325},"blue-team-incident","Blue Team \u002F Incident",{"key":347,"name_tr":348,"name_en":349,"sort":350,"specializations":351},"qa-test-automation","QA \u002F Test Otomasyonu","QA \u002F Test Automation",9,[352],{"key":200,"name":201,"field":347},{"key":354,"name_tr":355,"name_en":355,"sort":356,"specializations":357},"data-engineer","Data Engineer",10,[358],{"key":200,"name":201,"field":354},{"key":360,"name_tr":361,"name_en":362,"sort":363,"specializations":364},"game-dev","Oyun Geliştirme","Game Development",11,[365],{"key":200,"name":201,"field":360},{"key":367,"name_tr":368,"name_en":368,"sort":369,"specializations":370},"ml-engineer","ML Engineer",12,[371],{"key":200,"name":201,"field":367},[14,15,16],{"junior":374,"mid":376,"senior":377},{"questions":375,"median_sec":3},20,{"questions":375,"median_sec":3},{"questions":375,"median_sec":3},[379,10],"tr",[381,382],"google","github",21750,true]