{"id":178665,"date":"2025-04-09T10:51:12","date_gmt":"2025-04-09T10:51:12","guid":{"rendered":"https:\/\/peraltafinancing.com\/analytics\/which-is-better-for-rags\/"},"modified":"2025-04-09T10:51:12","modified_gmt":"2025-04-09T10:51:12","slug":"which-is-better-for-rags","status":"publish","type":"post","link":"https:\/\/fivemor.com\/?p=178665","title":{"rendered":"Which Is Better for RAGs?"},"content":{"rendered":"<p> <br \/>\n<\/p>\n<div id=\"article-start\">\n<p>As Large Language Models (LLMs) continue to advance quickly, one of their most sight after applications is in RAG systems. <a href=\"https:\/\/www.analyticsvidhya.com\/blog\/2023\/09\/retrieval-augmented-generation-rag-in-ai\/\" target=\"_blank\" rel=\"noreferrer noopener\">Retrieval-Augmented Generation<\/a>, or RAG connects these models to external information sources, thereby increasing their usability. This helps ground their answers to facts, making them more reliable. In this article, we will compare the performance and accuracy of two notable models: <a href=\"https:\/\/www.analyticsvidhya.com\/blog\/2025\/04\/meta-llama-4\/\" target=\"_blank\" rel=\"noreferrer noopener\">Meta\u2019s LLaMA 4<\/a> Scout and OpenAI\u2019s GPT-4o in RAG systems. We will first build a RAG system using tools like <a href=\"https:\/\/www.analyticsvidhya.com\/blog\/2024\/06\/langchain-guide\/\" target=\"_blank\" rel=\"noreferrer noopener\">LangChain<\/a>, FAISS, and FastEmbed and then do the evaluation and LLaMA 4 vs. GPT-4o comparison using the RAGAS framework.<\/p>\n<h2 class=\"wp-block-heading\" id=\"h-getting-to-know-the-models\">Getting to Know the Models<\/h2>\n<p>Before diving into the comparison, let\u2019s briefly introduce the two models:<\/p>\n<p><strong>LLaMA 4 Scout<\/strong><\/p>\n<p>Llama 4 Scout is the most efficient model of Meta\u2019s newly released LLaMA 4 family. The model that looks promising in benchmark tests, understands up to 10 million tokens, which is quite large. It\u2019s also noted for handling sensitive questions with fewer refusals compared to some other models. LLaMA 4 on the Groq API is often noted for its inference speed as well.<\/p>\n<p>Because Meta released its weights openly, developers can inspect and use its pre-trained parameters. This transparency makes it appealing for research and custom development.<\/p>\n<p><em>Also Read: <a href=\"https:\/\/www.analyticsvidhya.com\/blog\/2025\/04\/access-llama-4-models-via-api\/\" target=\"_blank\" rel=\"noreferrer noopener\">How to Access Meta\u2019s Llama 4 Models via API<\/a><\/em><\/p>\n<p><strong>GPT-4o<\/strong><\/p>\n<p>GPT-4o represents OpenAI\u2019s latest step in the GPT series. It brings improvements in reasoning ability, coding tasks, and the overall quality of its responses. It\u2019s built to be efficient with computing resources while competing strongly against other top models.<\/p>\n<p><em>Also Read: <a href=\"https:\/\/www.analyticsvidhya.com\/blog\/2025\/04\/deepseek-v3-vs-llama-4\/\" target=\"_blank\" rel=\"noreferrer noopener\">DeepSeek V3 vs LLaMA 4: Which Model Reigns Supreme?<\/a><\/em><\/p>\n<h2 class=\"wp-block-heading\" id=\"h-what-is-ragas\">What is RAGAS?<\/h2>\n<p>Evaluating a RAG system involves checking how well it retrieves information, and also how well it generates an answer based on that information. Simply looking at the final answer isn\u2019t enough.<\/p>\n<p>RAGAS (Retrieval-Augmented Generation Assessment Suite) provides metrics to evaluate different parts of the RAG process without needing a pre-written perfect answer. Key metrics used in RAGAS include:<\/p>\n<ul class=\"wp-block-list\">\n<li><strong>Faithfulness:<\/strong> Does the generated answer accurately represent the information found in the retrieved documents?<\/li>\n<li><strong>Answer Relevancy:<\/strong> Is the answer actually relevant to the question asked?<\/li>\n<li><strong>Context Precision &amp; Recall:<\/strong> How effective was the retrieval step? Did it find relevant<\/li>\n<\/ul>\n<p>Using these metrics, we can get a clearer picture of where a RAG system excels and where it might be failing. Now let\u2019s see how we can implement RAG and evaluate the models using RAGAS.<\/p>\n<h2 class=\"wp-block-heading\" id=\"h-rag-implementation-and-evaluation-using-ragas\">RAG Implementation and Evaluation Using RAGAS<\/h2>\n<p>In this section, we\u2019ll first delve into the steps and the related code from the Jupyter Notebook used to set up the RAG pipeline. We\u2019ll include chat instances using both GPT-4o and LLaMA 4 Scout, via the Groq platform. We will then run the RAGAS evaluation on both the RAG systems.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-building-the-rag-system\">Building the RAG System<\/h3>\n<p>Here are the steps to follow to build a RAG system using GPT-4o and LLaMA 4.<\/p>\n<figure class=\"wp-block-image size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"367\" height=\"550\" src=\"https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Building-a-RAG-system.webp\" alt=\"Building a RAG system using LLaMA 4\" class=\"wp-image-230502\" srcset=\"https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Building-a-RAG-system.webp 367w, https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Building-a-RAG-system-200x300.webp 200w, https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Building-a-RAG-system-150x225.webp 150w\" sizes=\"(max-width: 367px) 100vw, 367px\"\/><\/figure>\n<h4 class=\"wp-block-heading\" id=\"h-1-install-necessary-libraries\">1. Install Necessary Libraries<\/h4>\n<p>First, we need to install the required Python packages for LangChain, Groq, OpenAI, vector stores (FAISS), PDF processing (PyMuPDF), embeddings (FastEmbed), and evaluation (Ragas).<\/p>\n<pre class=\"wp-block-code\"><code>!pip install -q langchain_groq langchain_community faiss-cpu pymupdf langchain fastembed langchain-openai<\/code><\/pre>\n<h4 class=\"wp-block-heading\" id=\"h-2-set-up-api-keys\">2. Set Up API Keys<\/h4>\n<p>Next, we have to configure API keys for OpenAI and Groq. The code uses Google Colab\u2019s userdata feature for secure key management.<\/p>\n<pre class=\"wp-block-code\"><code>import os\n\nos.environ[\"OPENAI_API_KEY\"] = \u201cyour_openai_api\u201d\n\nos.environ[\"GROQ_API_KEY\"] = \u201cyour_groq_api\u201d<\/code><\/pre>\n<h4 class=\"wp-block-heading\" id=\"h-3-import-libraries\">3. Import Libraries<\/h4>\n<p>We will now import the specific classes and functions needed from the installed libraries.<\/p>\n<pre class=\"wp-block-code\"><code>import os\nimport fitz\nimport numpy as np\nimport faiss\nimport pandas as pd\nimport seaborn as sns\nimport matplotlib.pyplot as plt\n\nfrom datasets import Dataset\nfrom langchain_community.embeddings.fastembed import FastEmbedEmbeddings\nfrom langchain.text_splitter import RecursiveCharacterTextSplitter\nfrom langchain_core.prompts import PromptTemplate\nfrom langchain_core.output_parsers import StrOutputParser\nfrom langchain_openai import ChatOpenAI\nfrom langchain_groq import ChatGroq\n\nfrom ragas import evaluate\nfrom ragas.metrics import faithfulness, answer_relevancy, context_recall, context_precision<\/code><\/pre>\n<h4 class=\"wp-block-heading\" id=\"h-4-initialize-language-models\">4. Initialize Language Models<\/h4>\n<p>Now is the main part. We need to create instances of the chat models we want to compare: GPT-4o and LLaMA 4 Scout (via Groq). While setting this up, note that temperature=1 allows for more variability in responses compared to temperature=0.<\/p>\n<pre class=\"wp-block-code\"><code>chat_model_4o = ChatOpenAI(temperature=1, model_name=\"gpt-4o\")\n\nchat_model_llama = ChatGroq(temperature=1, \nmodel_name=\"meta-llama\/llama-4-scout-17b-16e-instruct\")<\/code><\/pre>\n<h4 class=\"wp-block-heading\" id=\"h-5-initialize-embedding-model-and-text-splitter\">5. Initialize Embedding Model and Text Splitter<\/h4>\n<p>Once the initialization is done, we can set up the model for converting text to vectors (FastEmbedEmbeddings). We also need to initialize the tool for breaking documents into smaller chunks (RecursiveCharacterTextSplitter).<\/p>\n<pre class=\"wp-block-code\"><code>embed_model = FastEmbedEmbeddings(model_name=\"BAAI\/bge-base-en-v1.5\")\n\nsplitter = RecursiveCharacterTextSplitter(chunk_size=1000, \nchunk_overlap=200)<\/code><\/pre>\n<p><strong>Explanation:<\/strong><\/p>\n<ol class=\"wp-block-list\">\n<li>FastEmbedEmbeddings is initialized with the BAAI\/bge-base-en-v1.5 model, converting text into numerical embeddings.<\/li>\n<li>RecursiveCharacterTextSplitter is set to create text chunks of 1000 characters, with a 200-character overlap.<\/li>\n<li>Hugging Face warning appears if no HF token is configured but doesn\u2019t affect public models like BGE.<\/li>\n<\/ol>\n<h4 class=\"wp-block-heading\" id=\"h-6-load-and-chunk-documents\">6. Load and Chunk Documents<\/h4>\n<p>This code extracts text from PDF files located in a specified data folder and splits the extracted text into manageable chunks. (You can replace it with your own pdf). Here, we are using the <a href=\"https:\/\/arxiv.org\/abs\/2502.12115\" target=\"_blank\" rel=\"nofollow noopener\">SWE lancer research paper<\/a>.<\/p>\n<pre class=\"wp-block-code\"><code>def extract_text_from_pdf(pdf_path):\n   doc = fitz.open(pdf_path)\n   return \"\\n\".join([page.get_text() for page in doc])\n\nfolder_path = \".\/data\/\"\ndocuments = [extract_text_from_pdf(os.path.join(folder_path, f)) for f in os.listdir(folder_path) if f.endswith(\".pdf\")]\nall_chunks = [chunk for doc in documents for chunk in splitter.split_text(doc)]<\/code><\/pre>\n<p><strong>Explanation:<\/strong><\/p>\n<ol class=\"wp-block-list\">\n<li><span style=\"font-weight: 400;\">The <code>extract_text_from_pdf<\/code> function uses the fitz library to extract text from all pages of a PDF.<\/span><\/li>\n<li>It lists PDF files in the specified folder_path (ensure the folder and files exist).<\/li>\n<li>The function splits the extracted text into smaller chunks using the defined splitter.<\/li>\n<\/ol>\n<h4 class=\"wp-block-heading\" id=\"h-7-create-faiss-vector-index\">7. Create FAISS Vector Index<\/h4>\n<p>We then generate embeddings for all text chunks and build a FAISS index for fast similarity searching.<\/p>\n<pre class=\"wp-block-code\"><code>embeddings = np.array(embed_model.embed_documents(all_chunks))\nindex = faiss.IndexFlatL2(embeddings.shape[1])\nindex.add(embeddings)<\/code><\/pre>\n<p><strong>Explanation:<\/strong><\/p>\n<ol class=\"wp-block-list\">\n<li>Checks if all_chunks are created and uses the embed_model (FastEmbed BGE) to convert them into embeddings.<\/li>\n<li>Embeddings are stored in a NumPy array, and a FAISS index (IndexFlatL2) is created for similarity search.<\/li>\n<li>The index is populated with embeddings, with error handling for empty chunks or embeddings.<\/li>\n<\/ol>\n<h4 class=\"wp-block-heading\" id=\"h-8-define-rag-core-functions-retrieve-and-answer\">8. Define RAG Core Functions (Retrieve and Answer)<\/h4>\n<p>These functions implement the core RAG logic: retrieving relevant chunks based on a query and generating an answer using an LLM with those chunks as context.<\/p>\n<pre class=\"wp-block-code\"><code>def retrieve_chunks(query, k=1):\n   query_embedding = np.array([embed_model.embed_query(query)])\n   _, I = index.search(query_embedding, k)\n   return [all_chunks[i] for i in I[0]]\n\ndef rag_answer(model, query, retrieved_docs):\n   prompt = PromptTemplate(\n       input_variables=[\"document\", \"question\"],\n       template=\"\"\"\n       You are a helpful AI assistant.\n       Use the CONTENT below to answer the QUESTION.\n       If the answer isn't in the content, reply: \"I don't have the answer to the question.\"\n\n       CONTENT: {document}\n       QUESTION: {question}\n       \"\"\"\n   )\n   chain = prompt | model | StrOutputParser()\n   return chain.invoke({\"document\": \"\\n\".join(retrieved_docs), \"question\": query})<\/code><\/pre>\n<p><strong>Explanation:<\/strong><\/p>\n<ol class=\"wp-block-list\">\n<li><span style=\"font-weight: 400;\"><code>retrieve_chunks<\/code> converts the query into an embedding and uses the FAISS index to find the closest k vectors.<\/span><\/li>\n<li>It returns the text chunks corresponding to the closest vectors\u2019 indices.<\/li>\n<li><span style=\"font-weight: 400;\"><code>rag_answer<\/code> defines a prompt template, combines it with the model and parser, and handles empty retrieval results.<\/span><\/li>\n<\/ol>\n<p>We now have our RAG systems, powered by GPT-4o and LLaMA 4, ready to be tested.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-evaluating-the-rag-system-using-ragas\">Evaluating the RAG System Using RAGAS<\/h3>\n<p>Now let\u2019s begin with the evaluation process using RAGAS. Our goal here is to see how each model behaves in a specific setup and gain practical insights based on the observed results. Here are the steps involved:<\/p>\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"367\" height=\"550\" src=\"https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/RAGAS-framework.webp\" alt=\"Evaluating RAGs using RAGAS framework\" class=\"wp-image-230504\" srcset=\"https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/RAGAS-framework.webp 367w, https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/RAGAS-framework-200x300.webp 200w, https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/RAGAS-framework-150x225.webp 150w\" sizes=\"auto, (max-width: 367px) 100vw, 367px\"\/><\/figure>\n<h4 class=\"wp-block-heading\" id=\"h-1-define-evaluation-questions-and-references\">1. Define Evaluation Questions and References<\/h4>\n<p>For this, we first need to set up the specific questions and corresponding ground truth (reference) answers.<\/p>\n<pre class=\"wp-block-code\"><code>questions = [\n   \"What is the main goal of the SWE Lancer system?\",\n   \"What problem does the SWE Lancer paper try to solve?\",\n   \"What are the key features of the SWE Lancer system?\",\n]\nreferences = [\n   \"The main goal of the SWE Lancer system is to improve software engineering productivity and automation.\",\n   \"The paper addresses the problem of inefficient software engineering workflows and proposes a machine learning-based solution.\",\n   \"Key features include modular design, machine learning integration, and scalability.\",\n]<\/code><\/pre>\n<h4 class=\"wp-block-heading\" id=\"h-2-test-rag-answer-generation-single-query\">2. Test RAG Answer Generation (Single Query)<\/h4>\n<p>Before the full evaluation, let\u2019s first test the rag_answer function with both models for a single question to see their raw output.<\/p>\n<p><strong>GPT-4o Test:<\/strong><\/p>\n<pre class=\"wp-block-code\"><code>rag_answer(chat_model_4o, questions[2], retrieve_chunks(questions[2], k=1))<\/code><\/pre>\n<p><strong>Output:<\/strong><\/p>\n<p>I don\u2019t have the answer to the question.<\/p>\n<p><strong>Explanation:<\/strong><\/p>\n<ol class=\"wp-block-list\">\n<li><span style=\"font-weight: 400;\">Calls the <code>rag_answer<\/code> function with GPT-4o, the third question, and the most relevant chunk for that question.<\/span><\/li>\n<li>GPT-4o uses the retrieved context to answer, but if it\u2019s insufficient, it states no answer is available.<\/li>\n<li>The model follows the prompt\u2019s instruction and acknowledges when the content is not relevant.<\/li>\n<\/ol>\n<p><strong>LLaMA 4 Scout Test:<\/strong><\/p>\n<pre class=\"wp-block-code\"><code>rag_answer(chat_model_llama, questions[2], retrieve_chunks(questions[2], k=1))<\/code><\/pre>\n<p><strong>Output:<\/strong><\/p>\n<p>The key features of the SWE-Lancer system are:\\n\\n1. It relies on a comprehensive set of test cases, rather than a handful of selectively chosen ones.\\n2. It is inherently more resistant to cheating.\\n3. It can accurately reflect a model\u2019s capacity to produce genuine, economically valuable solutions for real-world engineering challenges.<\/p>\n<p><strong>Explanation:<\/strong><\/p>\n<ol class=\"wp-block-list\">\n<li><span style=\"font-weight: 400;\">Calls <code>rag_answer<\/code> with the chat_model_llama (LLaMA 4 Scout via Groq) for the same question and retrieved chunk.<\/span><\/li>\n<li>LLaMA 4 generates an answer, possibly from the retrieved chunk or by inferring beyond the context.<\/li>\n<li>Unlike GPT-4o, LLaMA 4 provides an answer even if the retrieved context may not be fully relevant.<\/li>\n<\/ol>\n<h4 class=\"wp-block-heading\" id=\"h-3-define-the-full-evaluation-function-evaluate-model\">3. Define the Full Evaluation Function (evaluate_model)<\/h4>\n<p>This function bundles the process of running all questions through the RAG pipeline for a given model and then scoring the results using RAGAS.<\/p>\n<pre class=\"wp-block-code\"><code>def evaluate_model(model, model_name):\n   answers, contexts = [], []\n   for q in questions:\n       docs = retrieve_chunks(q, k=1)\n       ans = rag_answer(model, q, docs)\n       answers.append(ans)\n       contexts.append(docs)\n   dataset = Dataset.from_dict({\n       \"question\": questions,\n       \"answer\": answers,\n       \"contexts\": contexts,\n       \"reference\": references,  # required for some RAGAS metrics\n   })\n\n   metrics = [context_precision, context_recall, faithfulness, answer_relevancy]\n   result = evaluate(dataset=dataset, metrics=metrics)\n   df = result.to_pandas()\n   df[\"model\"] = model_name\n   print(f\"RAG OUTPUT FOR {model_name}:\")\n   for q, a in zip(questions, answers):\n       print(f\"\\nQ: {q}\\nA: {a}\")\n   return df<\/code><\/pre>\n<p><strong>Explanation:<\/strong><\/p>\n<ol class=\"wp-block-list\">\n<li><span style=\"font-weight: 400;\">Iterates through each question, retrieves the top chunk, and generates answers using the model and <code>rag_answer<\/code>.<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Stores answers and contexts in a <code>datasets.Dataset<\/code>, calculates evaluation metrics, and calls <code>ragas.evaluate<\/code>.<\/span><\/li>\n<li>Results are organized in a pandas DataFrame, with model name and raw Q&amp;A outputs, and the scores are returned.<\/li>\n<\/ol>\n<h4 class=\"wp-block-heading\" id=\"h-4-run-full-evaluations-and-display-results\">4. Run Full Evaluations and Display Results<\/h4>\n<p>We execute the evaluate_model function for both models and display the resulting DataFrames containing the RAGAS scores.<\/p>\n<pre class=\"wp-block-code\"><code>gpt4o_df = evaluate_model(chat_model_4o, \"GPT-4o\")\n\nllama_df = evaluate_model(chat_model_llama, \"LLaMA-4\")<\/code><\/pre>\n<p><strong>Output<\/strong><\/p>\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"872\" height=\"280\" src=\"https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Screenshot-2025-04-08-192937.webp\" alt=\"LLaMA 4 vs. GPT-4o: Which Is Better for RAGs?\" class=\"wp-image-230500\" srcset=\"https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Screenshot-2025-04-08-192937.webp 872w, https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Screenshot-2025-04-08-192937-300x96.webp 300w, https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Screenshot-2025-04-08-192937-768x247.webp 768w, https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Screenshot-2025-04-08-192937-150x48.webp 150w\" sizes=\"auto, (max-width: 872px) 100vw, 872px\"\/><\/figure>\n<p><strong>llama_df<\/strong><\/p>\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"872\" height=\"102\" src=\"https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Screenshot-2025-04-08-192956.webp\" alt=\"LLaMA 4 RAG response | RAGAS framework\" class=\"wp-image-230498\" srcset=\"https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Screenshot-2025-04-08-192956.webp 872w, https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Screenshot-2025-04-08-192956-300x35.webp 300w, https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Screenshot-2025-04-08-192956-768x90.webp 768w, https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Screenshot-2025-04-08-192956-150x18.webp 150w\" sizes=\"auto, (max-width: 872px) 100vw, 872px\"\/><\/figure>\n<p><strong>Gpt4o_df<\/strong><\/p>\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"872\" height=\"104\" src=\"https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Screenshot-2025-04-08-193022.webp\" alt=\"GPT-4o RAG response | RAGAS framework\" class=\"wp-image-230499\" srcset=\"https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Screenshot-2025-04-08-193022.webp 872w, https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Screenshot-2025-04-08-193022-300x36.webp 300w, https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Screenshot-2025-04-08-193022-768x92.webp 768w, https:\/\/cdn.analyticsvidhya.com\/wp-content\/uploads\/2025\/04\/Screenshot-2025-04-08-193022-150x18.webp 150w\" sizes=\"auto, (max-width: 872px) 100vw, 872px\"\/><\/figure>\n<p><strong>Explanation:<\/strong><\/p>\n<ol class=\"wp-block-list\">\n<li><span style=\"font-weight: 400;\">Runs the evaluation using <code>evaluate_model<\/code> for both GPT-4o and LLaMA 4 Scout, showing RAGAS progress and raw Q&amp;A outputs.<\/span><\/li>\n<li>The DataFrames (gpt4o_df and llama_df) show context_precision and context_recall as 0.0, indicating retrieval failure.<\/li>\n<li>Faithfulness is low for GPT-4o (due to refusals), but high for LLaMA 4 (consistent answers); answer_relevancy is high for LLaMA 4.<\/li>\n<\/ol>\n<p>Now that the testing part is done, let\u2019s look at the results.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-llama-4-vs-gpt-4o-results-and-analysis\">LLaMA 4 vs. GPT-4o: Results and Analysis<\/h3>\n<p>The execution of the code provided clear, quantitative results via the RAGAS evaluation.<\/p>\n<h4 class=\"wp-block-heading\" id=\"h-qualitative-observations\">Qualitative Observations<\/h4>\n<p><strong>LLaMA 4 Scout:<\/strong> <span style=\"font-weight: 400;\">As seen in the RAG output section and the single test, this model generated answers for all questions, even when the retrieved context was likely insufficient or irrelevant (indicated by RAGAS scores). The answers it provided <\/span><i><span style=\"font-weight: 400;\">sounded<\/span><\/i><span style=\"font-weight: 400;\"> relevant to the questions asked.<\/span><\/p>\n<p><strong>GPT-4o:<\/strong> <span style=\"font-weight: 400;\">Consistently replied \u201cI don\u2019t have the answer to the question.\u201d This aligns with the prompt\u2019s instruction when the answer isn\u2019t found in the provided context, indicating it correctly identifies the retrieved context as unhelpful for answering the specific questions.<\/span><\/p>\n<h4 class=\"wp-block-heading\" id=\"h-quantitative-summary\">Quantitative Summary<\/h4>\n<p>Here\u2019s a summary of what the the RAGAS DataFrames (gpt4o_df, llama_df) show:<\/p>\n<div class=\"table-responsive mb-3\">\n<table class=\"table table-hover table-bordered\">\n<thead\/>\n<tbody>\n<tr>\n<td><strong>Metric<\/strong><\/td>\n<td><strong>LLaMA 4 Scout (Avg)<\/strong><\/td>\n<td><strong>GPT-4o (Avg)<\/strong><\/td>\n<td><strong>Interpretation Notes<\/strong><\/td>\n<\/tr>\n<tr>\n<td><strong>Context Precision<\/strong><\/td>\n<td>0.0<\/td>\n<td>0.0<\/td>\n<td>Retrieval failed to find relevant chunks.<\/td>\n<\/tr>\n<tr>\n<td><strong>Context Recall<\/strong><\/td>\n<td>0.0<\/td>\n<td>0.0<\/td>\n<td>Retrieval failed to find relevant chunks.<\/td>\n<\/tr>\n<tr>\n<td><strong>Faithfulness<\/strong><\/td>\n<td>1.0<\/td>\n<td>~0.33 (Variable)<\/td>\n<td>LLaMA stuck to the (irrelevant) context. GPT-4o refused.<\/td>\n<\/tr>\n<tr>\n<td><strong>Answer Relevancy<\/strong><\/td>\n<td>~0.996<\/td>\n<td>0.0<\/td>\n<td>LLaMA answers sound relevant. GPT-4o didn\u2019t answer.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h4 class=\"wp-block-heading\" id=\"h-interpretation-of-the-result\">Interpretation of the Result<\/h4>\n<p>Interpreting the RAGAS scores provides insights into the LLaMA 4 performance vs GPT-4o in handling retrieval failures within this specific test.<\/p>\n<p><strong>LLaMA 4 Scout\u2019s Behavior<\/strong><\/p>\n<p>Despite poor context, LLaMA 4 generated answers that RAGAS deemed highly relevant (Answer Relevancy ~0.996) and perfectly faithful (Faithfulness 1.0). This means its answers, while potentially based on its internal knowledge rather than the retrieved text, were consistent with the single (irrelevant) chunk provided and sounded appropriate for the questions. It prioritized generating a plausible answer.<\/p>\n<p><strong>GPT-4o\u2019s Behavior<\/strong><\/p>\n<p>GPT-4o strictly adhered to the prompt\u2019s instruction to answer only from the context. Since the context was useless (Precision\/Recall 0.0), it correctly refused to answer, resulting in Answer Relevancy 0.0. This highlights a key difference in apparent GPT-4o vs LLaMA 4 accuracy strategy when context is missing; GPT-4o favors silence over potential inaccuracy based on poor retrieval. Its lower average Faithfulness score reflects RAGAS sometimes penalizing these refusals, even though the refusal itself was faithful to the instruction given the bad context. It prioritized factual grounding and avoiding hallucination.<\/p>\n<h2 class=\"wp-block-heading\" id=\"h-conclusion\">Conclusion<\/h2>\n<p>This experiment was to compare LLaMA 4 vs. GPT-4o on a specific RAG setup, using the RAGAS framework. Through our hands-on testing, we clearly demonstrated distinct behaviors between LLaMA 4 Scout and GPT-4o, especially when encountering retrieval failures.<\/p>\n<p>LLaMA 4 Scout showed a tendency to produce plausible, relevant-sounding answers even with inadequate context. This is a characteristic potentially suitable for lower-stakes applications like brainstorming. Conversely, GPT-4o exhibited strong adherence to instructions by refusing to generate answers without sufficient retrieved information. This conservative approach makes it better suited for scenarios demanding high reliability and minimal hallucination.<\/p>\n<p>The RAGAS framework proved essential, not only scoring the outputs but pinpointing the retrieval step\u2019s failure (Context Precision\/Recall = 0.0) as the root cause, thereby explaining the observed differences in model responses. Using this setup you can compare the performance of any LLMs for real-world use cases.<\/p>\n<h2 class=\"wp-block-heading\" id=\"h-frequently-asked-questions\">Frequently Asked Questions<\/h2>\n<div class=\"schema-faq wp-block-yoast-faq-block\">\n<div class=\"schema-faq-section\" id=\"faq-question-1744122609695\"><strong class=\"schema-faq-question\">Q1. What is Retrieval-Augmented Generation (RAG)?<\/strong> <\/p>\n<p class=\"schema-faq-answer\">A. RAG enhances language models by retrieving external information before answering. This approach helps ground responses in facts, improving accuracy and relevance.<\/p>\n<\/p><\/div>\n<div class=\"schema-faq-section\" id=\"faq-question-1744122618587\"><strong class=\"schema-faq-question\">Q2. What is the purpose of an evaluation framework like RAGAS?<\/strong> <\/p>\n<p class=\"schema-faq-answer\">A. RAGAS provides specific metrics to objectively assess RAG system components like retrieval quality and answer faithfulness. It offers deeper insights than just evaluating the final answer.<\/p>\n<\/p><\/div>\n<div class=\"schema-faq-section\" id=\"faq-question-1744122627472\"><strong class=\"schema-faq-question\">Q3. Why compare different language models (like LLaMA 4 Scout and GPT-4o) within a RAG system?<\/strong> <\/p>\n<p class=\"schema-faq-answer\">A. Comparing models in RAG highlights their different behaviors with retrieved data. This understanding helps select the most suitable model based on specific application needs.<\/p>\n<\/p><\/div>\n<div class=\"schema-faq-section\" id=\"faq-question-1744122638104\"><strong class=\"schema-faq-question\">Q4. Which model is better for RAG: LLaMA 4 Scout or GPT-4o?<\/strong> <\/p>\n<p class=\"schema-faq-answer\">A. This test showed different approaches: LLaMA 4 answered despite poor retrieval, while GPT-4o refused, prioritizing safety. The \u201cbetter\u201d model depends entirely on the application\u2019s specific requirements.<\/p>\n<\/p><\/div>\n<div class=\"schema-faq-section\" id=\"faq-question-1744122646888\"><strong class=\"schema-faq-question\">Q5. How can RAG system performance be improved?<\/strong> <\/p>\n<p class=\"schema-faq-answer\">A. Key improvements usually involve enhancing the information retrieval step (e.g., better search, chunking) or carefully tuning the prompts given to the language model.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"border-top py-3 author-info my-4\">\n<div class=\"author-card d-flex align-items-center\">\n<div class=\"flex-shrink-0 overflow-hidden\">\n                                    <a href=\"https:\/\/www.analyticsvidhya.com\/blog\/author\/harsh9480979\/\" class=\"text-decoration-none active-avatar\"><br \/>\n                                                                       <img decoding=\"async\" src=\"https:\/\/av-eks-lekhak.s3.amazonaws.com\/media\/lekhak-profile-images\/converted_image_0fBqNLi.webp\" width=\"48\" height=\"48\" alt=\"Harsh Mishra\" loading=\"lazy\" class=\"rounded-circle\"\/><\/p>\n<p>                                <\/a>\n                                <\/div>\n<\/p><\/div>\n<p>Harsh Mishra is an AI\/ML Engineer who spends more time talking to Large Language Models than actual humans. Passionate about GenAI, NLP, and making machines smarter (so they don\u2019t replace him just yet). When not optimizing models, he\u2019s probably optimizing his coffee intake. \ud83d\ude80\u2615<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<p><h4 class=\"fs-24 text-dark\">Login to continue reading and enjoy expert-curated content.<\/h4>\n<p>                        <button class=\"btn btn-primary mx-auto d-table\" data-bs-toggle=\"modal\" data-bs-target=\"#loginModal\" id=\"readMoreBtn\">Keep Reading for Free<\/button>\n                    <\/p>\n\n","protected":false},"excerpt":{"rendered":"<p>As Large Language Models (LLMs) continue to advance quickly, one of their most sight after applications is in RAG systems. Retrieval-Augmented Generation, or RAG connects these models to external information sources, thereby increasing their usability. This helps ground their answers to facts, making them more reliable. In this article, we will compare the performance and [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":178666,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12033],"tags":[70819],"dealstore":[],"offerexpiration":[],"class_list":["post-178665","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-analytics","tag-rags"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Which Is Better for RAGs? - Som2ny Network<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fivemor.com\/?p=178665\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Which Is Better for RAGs? - Som2ny Network\" \/>\n<meta property=\"og:description\" content=\"As Large Language Models (LLMs) continue to advance quickly, one of their most sight after applications is in RAG systems. Retrieval-Augmented Generation, or RAG connects these models to external information sources, thereby increasing their usability. This helps ground their answers to facts, making them more reliable. In this article, we will compare the performance and [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fivemor.com\/?p=178665\" \/>\n<meta property=\"og:site_name\" content=\"Som2ny Network\" \/>\n<meta property=\"article:published_time\" content=\"2025-04-09T10:51:12+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/04\/Putting-RAG-to-the-Test-LLaMA-4-vs.-GPT-4o.webp.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"872\" \/>\n\t<meta property=\"og:image:height\" content=\"473\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"13 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fivemor.com\/?p=178665#article\",\"isPartOf\":{\"@id\":\"https:\/\/fivemor.com\/?p=178665\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371\"},\"headline\":\"Which Is Better for RAGs?\",\"datePublished\":\"2025-04-09T10:51:12+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fivemor.com\/?p=178665\"},\"wordCount\":2127,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fivemor.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/fivemor.com\/?p=178665#primaryimage\"},\"thumbnailUrl\":\"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/04\/Putting-RAG-to-the-Test-LLaMA-4-vs.-GPT-4o.webp.webp\",\"keywords\":[\"RAGs\"],\"articleSection\":[\"Analytics\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fivemor.com\/?p=178665#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fivemor.com\/?p=178665\",\"url\":\"https:\/\/fivemor.com\/?p=178665\",\"name\":\"Which Is Better for RAGs? - Som2ny Network\",\"isPartOf\":{\"@id\":\"https:\/\/fivemor.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/fivemor.com\/?p=178665#primaryimage\"},\"image\":{\"@id\":\"https:\/\/fivemor.com\/?p=178665#primaryimage\"},\"thumbnailUrl\":\"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/04\/Putting-RAG-to-the-Test-LLaMA-4-vs.-GPT-4o.webp.webp\",\"datePublished\":\"2025-04-09T10:51:12+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fivemor.com\/?p=178665#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fivemor.com\/?p=178665\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/fivemor.com\/?p=178665#primaryimage\",\"url\":\"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/04\/Putting-RAG-to-the-Test-LLaMA-4-vs.-GPT-4o.webp.webp\",\"contentUrl\":\"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/04\/Putting-RAG-to-the-Test-LLaMA-4-vs.-GPT-4o.webp.webp\",\"width\":872,\"height\":473},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fivemor.com\/?p=178665#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/fivemor.com\/?bp_activities=1\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Which Is Better for RAGs?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fivemor.com\/#website\",\"url\":\"https:\/\/fivemor.com\/\",\"name\":\"Som2ny Network\",\"description\":\"Daily Deals\",\"publisher\":{\"@id\":\"https:\/\/fivemor.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fivemor.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/fivemor.com\/#organization\",\"name\":\"Som2ny Network\",\"url\":\"https:\/\/fivemor.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/fivemor.com\/wp-content\/uploads\/2026\/07\/4a0953c4-logo-300x86-1.png\",\"contentUrl\":\"https:\/\/fivemor.com\/wp-content\/uploads\/2026\/07\/4a0953c4-logo-300x86-1.png\",\"width\":300,\"height\":86,\"caption\":\"Som2ny Network\"},\"image\":{\"@id\":\"https:\/\/fivemor.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/729ae85bf62b9917e93538db2f2688ca?s=96&r=g&default=https%3A%2F%2Ffivemor.com%2Fwp-content%2Fplugins%2Fbuddypress-first-letter-avatar%2Fimages%2Fdefault%2F96%2Flatin_a.png\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/729ae85bf62b9917e93538db2f2688ca?s=96&r=g&default=https%3A%2F%2Ffivemor.com%2Fwp-content%2Fplugins%2Fbuddypress-first-letter-avatar%2Fimages%2Fdefault%2F96%2Flatin_a.png\",\"caption\":\"admin\"},\"sameAs\":[\"https:\/\/fivemor.com\"],\"url\":\"https:\/\/fivemor.com\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Which Is Better for RAGs? - Som2ny Network","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fivemor.com\/?p=178665","og_locale":"en_US","og_type":"article","og_title":"Which Is Better for RAGs? - Som2ny Network","og_description":"As Large Language Models (LLMs) continue to advance quickly, one of their most sight after applications is in RAG systems. Retrieval-Augmented Generation, or RAG connects these models to external information sources, thereby increasing their usability. This helps ground their answers to facts, making them more reliable. In this article, we will compare the performance and [&hellip;]","og_url":"https:\/\/fivemor.com\/?p=178665","og_site_name":"Som2ny Network","article_published_time":"2025-04-09T10:51:12+00:00","og_image":[{"width":872,"height":473,"url":"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/04\/Putting-RAG-to-the-Test-LLaMA-4-vs.-GPT-4o.webp.webp","type":"image\/webp"}],"author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"admin","Est. reading time":"13 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fivemor.com\/?p=178665#article","isPartOf":{"@id":"https:\/\/fivemor.com\/?p=178665"},"author":{"name":"admin","@id":"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371"},"headline":"Which Is Better for RAGs?","datePublished":"2025-04-09T10:51:12+00:00","mainEntityOfPage":{"@id":"https:\/\/fivemor.com\/?p=178665"},"wordCount":2127,"commentCount":0,"publisher":{"@id":"https:\/\/fivemor.com\/#organization"},"image":{"@id":"https:\/\/fivemor.com\/?p=178665#primaryimage"},"thumbnailUrl":"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/04\/Putting-RAG-to-the-Test-LLaMA-4-vs.-GPT-4o.webp.webp","keywords":["RAGs"],"articleSection":["Analytics"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fivemor.com\/?p=178665#respond"]}]},{"@type":"WebPage","@id":"https:\/\/fivemor.com\/?p=178665","url":"https:\/\/fivemor.com\/?p=178665","name":"Which Is Better for RAGs? - Som2ny Network","isPartOf":{"@id":"https:\/\/fivemor.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/fivemor.com\/?p=178665#primaryimage"},"image":{"@id":"https:\/\/fivemor.com\/?p=178665#primaryimage"},"thumbnailUrl":"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/04\/Putting-RAG-to-the-Test-LLaMA-4-vs.-GPT-4o.webp.webp","datePublished":"2025-04-09T10:51:12+00:00","breadcrumb":{"@id":"https:\/\/fivemor.com\/?p=178665#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fivemor.com\/?p=178665"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/fivemor.com\/?p=178665#primaryimage","url":"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/04\/Putting-RAG-to-the-Test-LLaMA-4-vs.-GPT-4o.webp.webp","contentUrl":"https:\/\/fivemor.com\/wp-content\/uploads\/2025\/04\/Putting-RAG-to-the-Test-LLaMA-4-vs.-GPT-4o.webp.webp","width":872,"height":473},{"@type":"BreadcrumbList","@id":"https:\/\/fivemor.com\/?p=178665#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/fivemor.com\/?bp_activities=1"},{"@type":"ListItem","position":2,"name":"Which Is Better for RAGs?"}]},{"@type":"WebSite","@id":"https:\/\/fivemor.com\/#website","url":"https:\/\/fivemor.com\/","name":"Som2ny Network","description":"Daily Deals","publisher":{"@id":"https:\/\/fivemor.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fivemor.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/fivemor.com\/#organization","name":"Som2ny Network","url":"https:\/\/fivemor.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/fivemor.com\/#\/schema\/logo\/image\/","url":"https:\/\/fivemor.com\/wp-content\/uploads\/2026\/07\/4a0953c4-logo-300x86-1.png","contentUrl":"https:\/\/fivemor.com\/wp-content\/uploads\/2026\/07\/4a0953c4-logo-300x86-1.png","width":300,"height":86,"caption":"Som2ny Network"},"image":{"@id":"https:\/\/fivemor.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371","name":"admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/fivemor.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/729ae85bf62b9917e93538db2f2688ca?s=96&r=g&default=https%3A%2F%2Ffivemor.com%2Fwp-content%2Fplugins%2Fbuddypress-first-letter-avatar%2Fimages%2Fdefault%2F96%2Flatin_a.png","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/729ae85bf62b9917e93538db2f2688ca?s=96&r=g&default=https%3A%2F%2Ffivemor.com%2Fwp-content%2Fplugins%2Fbuddypress-first-letter-avatar%2Fimages%2Fdefault%2F96%2Flatin_a.png","caption":"admin"},"sameAs":["https:\/\/fivemor.com"],"url":"https:\/\/fivemor.com\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/posts\/178665","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=178665"}],"version-history":[{"count":0,"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/posts\/178665\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/media\/178666"}],"wp:attachment":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=178665"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=178665"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=178665"},{"taxonomy":"dealstore","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fdealstore&post=178665"},{"taxonomy":"offerexpiration","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fofferexpiration&post=178665"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}