AI Hero Club

Multimodal RAG · Lesson 4

Marked Complete by You0 / 8

Saved in this browser only. Marking a lesson complete does not mean the project has passed verification.

Lesson Outline 4 subsections
Course Contents 8 lessons
Full course plan.
Multimodal RAG / Learning Plan ↗

LESSON 04 / 8Suggested study 150 minutes

Text–image Queries, Candidate Fusion and Ranking Diagnostics

When lexical and image–text retrieval produce different lists, how do we fuse candidates and locate the step that lost the evidence?

3 Questions for This Lesson
  • Connect the frozen double encoder to the actual PNG index
  • Countdown rankings are combined and understood in parallel.
  • Distinguishing candidate recall, overlaying and factual support
Course Project ZIP ↓

Cross-Modal Queries, Fusion, and Candidate Boundaries

The previous chapter trained a real, but limited, graphic encoder. This chapter put it back to the information assistant instead of stopping at the training loss. The goal was to give a query and an index created by a real file, return a retroactive candidate and rank each step. The encoder is now frozen: close the parameter gradient after loading the checkpoint and enter the assessment mode. The index read the actual PNG recalculating the image vector, querying to read the actual string to calculate the text vector; it does not take the result from the table of assessments and does not directly visualize the creation of the caption table.

The index contains two types of entries. The document entry is from the original line-by-line field, containing the theme, field, value and character location; the image entry is from actual pixels, with the colour, shape, size and 32-dimensional learning expression extracted by a fixed rule. The word-law branch can retrieve text from both categories of entries, while the learning branch compares image vectors only. The text currently in model training is merely geometrical phrases and does not learn to borrow the opening hours of the booth, so the learning branch cannot be called generic document semantic search; document failure is an obvious manifestation of the capability boundary.

Query is preceded by the same limited word method for extracting units. Neurosearch is performed only when matching units exist; no in-domains are returned to empty learning rankings. This handle prevents any direction generated by a full empty bag vector from being used as a meaningful semantic signal, but it does not close the syntax gap: a mixed query containing geometry and unknown properties can still generate an image candidate, and the supporting check later must reject unsupported properties. The searcher should not be quietly deleted. “Material” The two words give a seemingly complete answer.

The learning index maintains the unit image vectors generated by the same check point. The query vector is also a unit vector, and the dot is the cosine, without any need to remove the image length. If you change weight or pre-process, the old index must be rebuilt; it does not constitute a spatial compatibility certificate for 32 dimensions. The course writes the check point SHA into the index with each query trajectory, and the answer phase checks the original hash, which guarantees that the version can be traced without changing the original reference.

c(q,d)=v(q)Tu(d),−1≤c(q,d)≤1c(q,d)=v(q)^Tu(d),\quad -1\le c(q,d)\le1
q is a field query and d is an image entry; cosine only provides the candidate relevance, not a fact check.

Example 1: Why Two Rankings Cannot Simply Add Their Raw Scores

Sets a document BM25 to 12 and an image cosmopolitan zero eight, the larger number does not indicate 15 times more documentary evidence, because the two are not the same size. If the BM25 is multiplied by ten, the word line is sorted completely, but the results of direct additions may vary considerably. The rankings are only used in their respective lists to avoid such arbitrary scaling; the cost is to lose fractional information, for example, when the first win is only next-door. It is a clear trade-off, not to calibrate different fractions as probabilities.

A. B, learning from B. A, taking 60 names from the beginning. Each list contributes one sixty-first to the entry and one sixty-second to the entry, and each one to the entry is divided by about one sixty-one and one sixty-two, and one zero-three-two-two-two-four. They are precisely coupled and ultimately determined in a stable ID ascending order. If C only appears first in the line, it will be divided by 61, about one-point-six-three-three, which is still below the sum of the two double-track support items.

R(d)=∑ℓ: d∈Lℓ160+rℓ(d)R(d)=\sum_{\ell:\,d\in L_\ell}\frac{1}{60+r_\ell(d)}
L is a list of candidates for a given path; absence contributes zero and does not impose absence as 61st.

This project uses all positive BM25 entries and all codeable image entries before integration, and then takes the first five. The missing words do not add zero word files to the list. The greater the constant, the smaller the relative priority difference, the more likely it will be that the number is called back by multiple routes; the more obvious the difference in head names when the constant is close to zero.

Run in the Project DirectoryThe original score does not participate in integration; the rules are defined separately.
from rag_lab.retrieval import reciprocal_rank_fusion
s=reciprocal_rank_fusion([['A','B'],['B','A']],constant=60)
assert abs(s['A']-(1/61+1/62))<1e-15
assert s['A']==s['B']
print(sorted(s.items(),key=lambda x:(-x[1],x[0])))

Example 2: Reranking Valid Candidates Cannot Create Missing Evidence

Query is “Red Small Circle”. The candidate is a red circle, candidate two is a red small square, candidate three is a red small circle. How many of the determinative-overlay query attributes appear in the actual short description of pixels, two thirds of the first two and one of the third, so that the third person is placed in front. This is not a training cross-encoder: it does not have a combined understanding of the neural network of pictures and sentences, but only compares the detectable properties with a clear reference unit. The distinction should be written in the report and cannot be renamed as an advanced model.

If the correct picture is not in the first five, the overlaying order does not see it, nor can the stronger sorting rule restore it. If the query is “Red Small Circle Material”, the reordering may still give full points to three full images, because the material does not belong to the field unit of the Words function; therefore, the overlay is one that does not authorize answering material. The answerer also checks whether there is no supporting content after removing the known unit and finds that “Material” is rejected. This means that ranking is a different contract from supporting verification and cannot be based on just one relevant score.

The document reorders using another obvious rule: both the theme and field appear verbatimly in a search with a split between zero and zero; the image covers between zero and one. This cross-model priority is a manual agreement, applying only to the current subject field query syntax. Complex mix issues such as “Where's the equipment in the photo?” do not achieve physical connection and cannot be used to pretend to support cross-information reasoning with this score. To expand, it must first define matching data and evaluation questions, then design relationships to retrieve them, and the course selection is as exposed as a gap.

Sorts the first five of the tracks, the first five of the nerve tops, the original fractions of the integration candidate, each BM25 and the cosine, and the order of the overlaying. Do not confuse these layers: the sequence of the current report 's hit and MR using the final cadidate_scores has been reordered overlayed and is strictly called “Candidatures for enhanced search indicators”. The original first five are still traceable in trade, but the report does not separately aggregate the net MRR that is not re-allocated and cannot be labelled as a pure RRF effect.

The calculation of the cost is also based on actual algorithms. Sets the number of image entries at I, dimension D, which requires some I times D times the volume of linear scanning points after the query code has been completed, and saves the image to indicate about I times D times the number of floating points. Currently I is twenty-four, D is thirty-two, and it is sufficient to scan directly. If you move to a nearest neighbourhood, recall may lose a true high item; if you use quantification, scores may change. These are new approximate assumptions, requiring and accurately scanning the baseline ratio, not simply to change the name of the database automatically.

In this fixed thirty-nine questions, the word approach and the combination of the last thirty-nine are consistent with the label, the learning branch 30 is consistent with the label, and nine files have all failed. The correct item contains six questions that should be rejected, so that it cannot be found in thirty-nine separate images; the image is in twenty-four. The mixture does not exceed the strong word baseline and cannot be concluded with “Combining more intelligent”. The actual evidence only suggests that the retention method in this little piece of material will fill the gap in the current learning branch ' s lack of document capacity.

There is also an important control: after index construction, temporarily deletes the training-pairs and the Query Table, and re-indexes should be the same as the entries. Tests do this directly to prove that the label forms are not read at the time of operation to replace the perception. This check does not prove that the training data never leaks to the parameters, because the parameters are already 20 pairs of training drawings; it just distinguishes. “A forward calculation after real learning” and “Reading prefabricated answers while searching”. Evidence from both sources needs to be kept separately.

The next chapter will make the candidate organization a complete unit of evidence, re-check the original, retain the conflict and unknown, and export accurate references. The search is relevant only to the qualifications that will enter this next stage, especially if similar readings of the picture cannot be construed as inference of weight, material, true identity or permit status.

TRY IT YOURSELF

Practice one: one absence

A is missing in the first word, in the list of studies; B is second in both directions. RRF scores are compared at the 60-hour constant.

Hint 1
The absence of IDs from a particular road contributes zero to the road, not virtual under-profile.
Hint 2
The two-way countdowns of A and B, respectively, are to be compared; the RRF high score can only indicate a list consensus and cannot determine the facts.
Compare with the Solution
A gets rid of 61, 0001,633, B gets two, 62,032,258, so B takes the lead. A default contributes zero. If a default is wrongly treated as a low-end virtual position, A will do more than the current definition. The consensus between the two sides may still make mistakes together, so it's just ranking here.

TRY IT YOURSELF

Practice II: Version Mismatched

The new encoder still produces 32-dimensional output. Direct queries about why there is no equivalent guarantee in the old index. Which comparisons should be kept?

Hint 1
The same vector dimensions are guaranteed only to allow for a certain amount of accumulation, and do they guarantee that the coordinates of the two encoders have the same meaning?
Hint 2
Staples old indexes, new indexes, new indexes, old indexes for new queries, and save with weights and pre-process identities.
Compare with the Solution
The two networks can rotate the space as a whole or change it more complexly. The same dimensions do not guarantee the same direction. Keep check points, preprocesses, words and index hass; compare old, new, and old queries with the same known pairs.

TRY IT YOURSELF

Practice III: Evaluation level

The original integration puts the correct entries in second place, covering heavy emissions first, and finally the answer is right. Can you say that the full RRF hit is one?

Hint 1
The pure integration, the rehashing and the final answer are presented in three sequential phases.
Hint 2
Keeping the first number of each phase to recalculate Hit@1 separately; the post-phase correction phase cannot be retroactively recast.
Compare with the Solution
No. Pure integration hit I, under the title zero, reordered one, and the correct answer rate one. To keep the middle order separately, calculated by actual output at each stage. The current report candidate_scorres has been rearranged, so its hit is a back row indicator. Only the final answer will hide the error of the searcher itself and cannot be named to erase the phase difference.

BUILD THE MECHANISM

Achieving integration and complete evidence selection

The actual Markdown source of the project continues to be used to achieve RRF and the entire evidence selection. Download this full course, running in the project root directory; only edit learner/starter.py, with a construction framework provided by the project.

Input and Output Rank started with 1 missing contribution 0 and went in parallel to a stable ID; the same route repeats the ID rejection.
The evidence budget is the Unicode character number of quitoe, which is too long to cut the original.

Run in the Project DirectoryStudy tasks to be completed
# rrf
def rrf(rankings,k=60):
    raise NotImplementedError('fusion')

# full_evidence
def full_evidence(candidates,max_characters):
    raise NotImplementedError('fusion')
Hint 1

The first hand counts 1/(k+rank) for each ID in two paths.

Hint 2

The cumulative order is sorted (-score, id) and no points are used to determine whether the facts are true or false.

Hint 3

Continue to test the back item when the first item is loaded; the integrity of the two fields is checked separately by the evidence door.

Independent inspection .venv/bin/python -m learner.check --stage fusion --output runs/learner-fusion.json

Migration test Add a low ranking conflict with the subject matter to discuss integration rankings and source awards separately; high ranking does not eliminate conflicts.

Reference Implementation and Explanation
Run in the Project DirectoryReference achieved
# rrf
def rrf(rankings,k=60):
 if type(k)is not int or k<1:raise ValueError('positive integer k')
 score={}
 for ranking in rankings:
  if len(set(ranking))!=len(ranking):raise ValueError('duplicate id in ranking')
  for rank,identity in enumerate(ranking,1):score[identity]=score.get(identity,0.)+1/(k+rank)
 return sorted(score.items(),key=lambda item:(-item[1],item[0]))

# full_evidence
def full_evidence(candidates,max_characters):
 if type(max_characters)is not int or max_characters<0:raise ValueError('nonnegative integer budget')
 selected=[];used=0
 for row in candidates:
  cost=len(row['quote'])
  if used+cost<=max_characters:selected.append(dict(row));used+=cost
 return selected

CHECK YOUR UNDERSTANDING

Check Your Understanding

Answer first, then open the explanation to check your reasoning. These questions help reveal gaps in understanding; independent implementation and transfer require separate evaluation.

1. What information is the current neural candidate covering?

Show ExplanationTiny encoder is trained in geometric scripts and does not achieve semantic encoding of documents.
A missing contribution from 2. RRF?

Show ExplanationOnly actual list members are currently reached.
3. Overwrite the rehearsing will bring back the correct picture beyond the top five?

Show ExplanationReordering can only reorder input candidates.
4. This mixture 39/39 and the word 39/39 description?

Show ExplanationThe conclusions are limited by the language, grammar and subject matter.

Manual completion records your progress; it does not certify your project.