Help
RSS
API
Feed
Maltego
Contact
Domain > truthtalker.ai
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2024-12-26
51.12.31.3
(
ClassC
)
Port 443
HTTP/1.1 200 OKContent-Length: 32849Content-Type: text/html; charsetutf-8Date: Thu, 26 Dec 2024 19:33:16 GMTServer: gunicornx-ms-middleware-request-id: 00000000-0000-0000-0000-000000000000 !DOCTYPE html>html langen>head> meta charsetUTF-8> !-- Add the viewport meta tag inside the head> section --> meta nameviewport contentwidthdevice-width, initial-scale1> meta namedescription contentTruthTalker proto-AGI: A new paradigm in AI that offers clarity and understanding without the biases and hallucinations of generative AI. Engage in deep internet searches and learn with AI that understands.> meta namekeywords contentTruthTalker, proto-AGI, AI clarity, AI understanding, bias-free AI, hallucination-free AI, AI search, AI learning> link relcanonical hrefhttps://truthTalker.ai> !-- Social Media Tags --> meta propertyog:title contentTrust in clarity, not in AI fantasy.> meta propertyog:description contentEngage with TruthTalker proto-AGI for deep internet searches and clear communication, free from AI biases and hallucinations.> meta propertyog:image contenthttps://truthTalker.ai/assets/images/qomlogo.png> meta propertyog:url contenthttps://truthTalker.ai> meta nametwitter:card contentsummary_large_image> !-- Favicon --> link relicon typeimage/ico hrefhttps://truthTalker.ai/qom.ico> title>TruthTalker proto-AGI. Trust in clarity, not in AI fantasy./title> link relstylesheet href/static/css/styles.css> script srchttps://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js>/script> /head> script typetext/javascript> var appInsightswindow.appInsights||function(a){ function b(a){cafunction(){var barguments;c.queue.push(function(){ca.apply(c,b)})}}var c{config:a},ddocument,ewindow;setTimeout(function(){var bd.createElement(script);b.srca.url||https://az416426.vo.msecnd.net/scripts/a/ai.0.js,d.getElementsByTagName(script)0.parentNode.appendChild(b)});try{c.cookied.cookie}catch(a){}c.queue;for(var fEvent,Exception,Metric,PageView,Trace,Dependency;f.length;)b(track+f.pop());if(b(setAuthenticatedUserContext),b(clearAuthenticatedUserContext),b(startTrackEvent),b(stopTrackEvent),b(startTrackPage),b(stopTrackPage),b(flush),!a.disableExceptionTracking){fonerror,b(_+f);var gef;effunction(a,b,d,e,h){var ig&&g(a,b,d,e,h);return!0!i&&c_+f(a,b,d,e,h),i}}return c }({ instrumentationKey:aac995e2-2f1f-4b0e-b52e-e72717f4277f }); /script>body> div idcontainer> div idterminal> div styletext-align: center;>a hrefhttps://qom.ai> img styledisplay: block; margin: 0 auto; src/static/images/qomlogo.png> /a>/div> div classYou stylewhite-space: pre-wrap; text-align: center;> v 0.99 Jul-30-2024 /div> h2 styletext-align: center;>Can You Spot a Lie? We Can./h2>p styletext-align: center;>a hrefhttps://nolies.ai target_blank relnoopener noreferrer>Uncover the Truth with NOLies.ai/a>/p> h1 styletext-align: center;>TruthTalker proto-AGI: br>Discover, Trust, Explore./h1> div classYou stylewhite-space: pre-wrap; text-align: left;>Here you can talk to me and do simple and deep searches on the internet. I can help you understand, search, learn and explore. I am free from the errors of Generative AI such as biases, and hallucinations because I use the next paradigm: AI that understands.I dont use RAG, embeddings, vector search, chunks, or any generative AI tools or methods. I dont need expensive data training, fine-tuning, or new LLMs.I only use any standard LLM and the Natural Meaning Processing, which allow me to understand, work, and produce meaning just like you do without realizing it while reading these lines.As result, my chat is better than GPT-4-o, Claude-3, LLAMA-3, etc. My web engines better than Perplexity, You.com, BING, etc. I am more precise, faster, more economical, and friendlier to the environment and people than any Generative AI model.I am the future.Judge for yourself.This basic app is free. Can you in return, tell us at tech@qom.ai when you detect a bug, or something you would like to improve? If you like the experience, share with your friends!We are preparing pro and business paid versions. Among their capabilities: Reasoning. 100% accuracy in capturing large documents like 10-K-SEC (GPT-4 only has 30%). Writing technical manuals and for dummies. Writing articles and reports: professional, scientific, medical, and legal. All without hallucinations or biases, with common sense and the same quality as a professional person. Write us to add you to the wailist. Write me in any language. Enjoy the AGI era! /div> div> span stylemargin-right: 50px;>Examples:/span> a href#user-input idhow-to-use-link stylemargin-right: 50px; onclickfillInput(What is next?, chat-only-checkbox)>Whats next?/a> a href#user-input idtell-me-something-link stylemargin-right: 50px; onclickfillInput(Tell me something interesting, Im-lucky-checkbox)>Tell me something interesting/a>br> br> span stylemargin-right: 50px;>(and press the enter key)br> /span> /div> div classTruthTalker>/div> /div> !-- Input area wrapped in its own div for styling --> div classinput-area> div classinput-area-2> textarea iduser-input placeholderDemonstration of the new paradigm of AI that understands, which allows AI to talk, search and think, without the hallucinations or biases of Generative AI. autofocus>/textarea> /div> !-- New container for the checkbox aligned with the textarea --> div classcheckbox-container> div classinput-group> input typecheckbox idchat-only-checkbox> label forchat-only-checkbox classchat-only-label>Chat only/label> /div> div classinput-group> input typecheckbox idIm-lucky-checkbox> label forIm-lucky-checkbox classIm-lucky-label>Im lucky/label> /div> div classinput-group> input typecheckbox iddeep-search-checkbox> label fordeep-search-checkbox classdeep-search-label>Deep Search/label> /div> /div> div styledisplay:none; idscraped-content-container> /div> script> // Variables globales para almacenar el último input de usuario y la última respuesta de la IA let lastUserInput null; let lastAIResponse null; let llmResponses {}; // Este objeto almacenará las respuestas del LLM indexadas por URL let urlsBeingRequested new Set(); window.appInsightsappInsights,appInsights.queue&&0appInsights.queue.length&&appInsights.trackPageView(); function fillInput(text, checkboxId) { // Llenar el campo de entrada de texto const inputField document.getElementById(user-input); inputField.value text; // Desmarcar todas las casillas de verificación document.getElementById(chat-only-checkbox).checked false; document.getElementById(Im-lucky-checkbox).checked false; document.getElementById(deep-search-checkbox).checked false; // Marcar la casilla de verificación correspondiente const checkbox document.getElementById(checkboxId); checkbox.checked true; } // Controlador de eventos para la introducción de datos por parte del usuario document.getElementById(user-input).addEventListener(keypress, function(e) { if (e.key Enter) { e.preventDefault(); var userInput e.target.value.trim(); var deepSearchCheckbox document.getElementById(deep-search-checkbox); var imLuckyCheckbox document.getElementById(Im-lucky-checkbox); var chatOnlyCheckbox document.getElementById(chat-only-checkbox); // Clear the input field //e.target.value ; if (deepSearchCheckbox && deepSearchCheckbox.checked && userInput) { //console.log(Deep Search mode active. Calling deep search.); // Update terminal with users input updateTerminal(userInput,Sending...); // Send user input to the server sendUserInputToServer(userInput); // Fetch koan before updating the terminal fetchKoanAndUpdateContainer(userInput); } else if (imLuckyCheckbox && imLuckyCheckbox.checked && userInput) { //console.log(Im lucky mode active. Calling light search.); updateTerminal(userInput,Sending...); document.getElementById(user-input).value Im lucky!...; call_IML(userInput); } else if (chatOnlyCheckbox && chatOnlyCheckbox.checked && userInput) { //console.log(Chat-only mode active. Calling LLM with input.); updateTerminal(userInput,Sending...); document.getElementById(user-input).value Thinking...; callLLM(userInput); } document.getElementById(user-input).value ; } }); // Call Im Lucky function call_IML(userInput) { fetch(/Im_lucky, { method: POST, headers: { Content-Type: application/json, }, body: JSON.stringify({ user_input: userInput }) }) .then(response > response.json()) .then(data > { if (data.response) { data.response data.response.replace(```html, ).replace(```, ).replace(/`/g, ); const responseWithPlusSigns insertPlusSigns(data.response, data.urls); updateTerminal(userInput, responseWithPlusSigns); document.getElementById(user-input).value ; fetchAllExtendedAnswers(data.urls); // Add further questions as clickable links inside containers if (data.further_questions && data.further_questions.length > 0) { let questionsHtml div classfurther-questions>p>Further questions:/p>ul>; data.further_questions.forEach((question, index) > { const url `further_question_${index}`; // Create a unique URL for each further question questionsHtml + `li>a href# data-url${url} classshow-scraped-content>${question}/a>div classextended-answer styledisplay: none;>Extended answer for ${question}/div>/li>`; // Add a container for the extended answer llmResponsesurl `Extended answer for ${question}`; // Replace this with the actual extended answer for each further question }); questionsHtml + /ul>/div>; terminal.insertAdjacentHTML(beforeend, questionsHtml); } } else { updateTerminal(userInput, Error obtaining AI response.); } }) .catch(error > { updateTerminal(userInput, Error obtaining AI response.); console.error(Error:, error); }); } /** * Obtiene respuestas ampliadas para todas las URL que las necesitan y las almacena en llmResponses * * @param {string} urls Una lista de URLs de las que obtener respuestas ampliadas */ function fetchAllExtendedAnswers(urls) { console.log(start get_extended_answer); urls.forEach(url > { if (shouldFetchExtendedAnswer(url)) { fetch(/get_extended_answer, { method: POST, headers: {Content-Type: application/json}, body: JSON.stringify({ user_input: lastUserInput, ai_response: lastAIResponse, url: url }) }) .then(response > response.json()) .then(data > { if (data.extended_answer) { data.extended_answer data.extended_answer.replace(/```html/g, ).replace(/```/g, ).replace(/`/g, ); llmResponsesurl data.extended_answer; // Add URL at the end of the extended answer let urlWithLink br>Source: a href + url + target_blank> + url + /a>; llmResponsesurl data.extended_answer + urlWithLink; // Locate the (...) let anchor document.querySelector(`adata-url${url}`); if(anchor) // Change (...) to (+) anchor.textContent ( + ); } else { console.error(Extended answer not available for, url); } }) .catch(error > { console.error(Error obtaining extended answer for, url, :, error); }); } }); } /** * Enviar la entrada del usuario al servidor y manejar la respuesta * * @param {string} userInput El mensaje del usuario. */ function sendUserInputToServer(userInput) { fetch(/deep_search, { method: POST, headers: { Content-Type: application/json, }, body: JSON.stringify({ user_input: userInput }) }) .then(response > response.json()) .then(data > { //console.log(Raw server response:, data); if (data.response) { data.response data.response.replace(```html, ).replace(```, ).replace(/`/g, ); //console.log(URLs:, data.urls); const cleanURLs data.urls.map(url > url.replace(/$/, )); const responseWithPlusSigns insertPlusSigns(data.response, cleanURLs); //console.log(Response with Plus Signs:, responseWithPlusSigns); updateTerminal(userInput, responseWithPlusSigns); let anchors document.querySelectorAll(.show-scraped-content); for(let anchor of anchors) { if(!anchor.nextElementSibling) { anchor.textContent (...); } } fetchAllExtendedAnswers(data.urls); } else { updateTerminal(userInput, Error obtaining AI response1.); } // Add further questions as clickable links inside containers if (data.further_questions && data.further_questions.length > 0) { let questionsHtml div classfurther-questions>p>Further questions:/p>ul>; data.further_questions.forEach((question, index) > { const url `further_question_${index}`; // Create a unique URL for each further question questionsHtml + `li>a href# data-url${url} classshow-scraped-content>${question}/a>div classextended-answer styledisplay: none;>Extended answer for ${question}/div>/li>`; // Add a container for the extended answer llmResponsesurl `Extended answer for ${question}`; // Replace this with the actual extended answer for each further question }); questionsHtml + /ul>/div>; terminal.insertAdjacentHTML(beforeend, questionsHtml); } }) .catch(error > { console.error(Error AI response2:, error); updateTerminal(userInput, Error obtaining AI response2.); }); } // Helper function to decide whether to fetch extended answer for a URL function shouldFetchExtendedAnswer(url) { // You can include logic here to determine if an extended answer is needed // For example, only fetch if the URL ends in .html return !url.endsWith(.pdf); } /** * Insertar signos (+) para URLs en la respuesta de la IA * @param {string} aiResponse Texto de la respuesta de la IA * @param {string} urls Las direcciones URL en las que se insertarán los signos +. * @returns {string} La respuesta de la IA con los signos más insertados */ function insertPlusSigns(aiResponse, urls) { //console.log(URLs received in insertPlusSigns:, urls); if (!urls || urls.length 0) { return aiResponse; // Return AIs response unchanged } let urlStr urls.map(url > url.replace(/$/, )).join(|); // Adjusted regex to include a href and >Some text/a> in the matching pattern const regex new RegExp(`(a href)(${urlStr})(>^*\/a>)`, g); let plusSignHTML $1$2$3 a data-url$2 classshow-scraped-content>( ... )/a>; // Añade (...) después del texto del enlace aiResponse aiResponse.replace(regex, plusSignHTML); return aiResponse; // Return AIs response with plus signs inserted } function callLLM(text) { // Hacer una solicitud al servidor para obtener la respuesta LLM fetch(/call_llm, { method: POST, headers: { Content-Type: application/json, }, body: JSON.stringify({text: text}) }) .then(response > response.json()) .then(data > { // Guardar la respuesta del LLM en el objeto global de respuestas if (data.llm_response) { // Insert the escaped LLM response into the container //document.getElementById(llm-output-container).innerHTML data.llm_response; // Reemplaza solo si la respuesta incluye URL if (data.llm_response.includes(http)) { data.llm_response data.llm_response.replace(/(http:\/\/\S+)/g, `a href# onclickfillInput($1, chat-only-checkbox)>$1/a>`) data.llm_response data.llm_response.replace(/`/g, ); } console.log(Further questions:, data.further_questions); // Add this line to check if further_questions are being passed correctly updateTerminal(text, data.llm_response.replace(/\n/g, br>), data.further_questions); document.getElementById(user-input).value ; console.log(Showing AI response); // Add further questions as clickable links inside containers if (data.further_questions && data.further_questions.length > 0) { let questionsHtml div classfurther-questions>p>Further questions:/p>ul>; data.further_questions.forEach((question, index) > { const url `further_question_${index}`; // Create a unique URL for each further question questionsHtml + `li>a href# data-url${url} classshow-scraped-content>${question}/a>div classextended-answer styledisplay: none;>Extended answer for ${question}/div>/li>`; // Add a container for the extended answer llmResponsesurl `Extended answer for ${question}`; // Replace this with the actual extended answer for each further question }); questionsHtml + /ul>/div>; terminal.insertAdjacentHTML(beforeend, questionsHtml); } } else { updateTerminal(text, No response received from LLM.); } llmResponsestext data.llm_response; document.getElementById(user-input).value ; }) .catch(error > { console.error(Error fetching LLM response:, error); llmResponsesurl Error obtaining LLM response.; }); } function handlePlusClick(event) { event.preventDefault(); let url event.target.getAttribute(data-url); //console.log(url); if (event.target.textContent ( - )) { // Change the symbol back to (+) and hide the extended contents event.target.textContent ( + ); let extendedContentDiv event.target.nextElementSibling; if (extendedContentDiv && extendedContentDiv.classList.contains(extended-answer)) { extendedContentDiv.style.display none; } } else { // Change the symbol to (-) and show extended answer event.target.textContent ( - ); let extendedContentDiv event.target.parentElement.querySelector(.extended-answer); if (!extendedContentDiv) { if (llmResponsesurl) { event.target.insertAdjacentHTML(afterend, div classextended-answer> + llmResponsesurl + /div>); } else { event.target.textContent ( + ); } } else { extendedContentDiv.style.display block; } } } function fetchKoanAndUpdateContainer(userInput) { fetch(`/get_koan?user_input${encodeURIComponent(userInput)}`) .then(response > response.json()) .then(data > { if (data.koan) { // Update placeholder with the koan document.getElementById(user-input).placeholder data.koan; } }) .catch(error > { //console.error(Error fetching koan:, error); }); } // Esta es la función click handler modificada para los links de consulta. function handleQueryClick(event) { event.preventDefault(); // Evita el comportamiento por defecto del click en el enlace var queryText event.target.textContent; // Consigue el texto desde el enlace clicado console.log(text,queryText); // Define el valor del campo de entrada del usuario como el texto del enlace var userInput document.getElementById(user-input) userInput.value queryText; // Crea un nuevo evento Enter var enterEvent new KeyboardEvent(keypress, { key: Enter, bubbles: true, cancelable: true, view: window }); // Desencadena el evento Enter userInput.dispatchEvent(enterEvent); } function updateTerminal(userInput, message) { // Obtener referencia al elemento terminal var terminal document.getElementById(terminal); // Crear nuevo elemento de mensaje para el input del usuario var userMsg document.createElement(p); userMsg.textContent User: + userInput; terminal.appendChild(userMsg); // Crear nuevo elemento de mensaje para el mensaje del sistema var systemMsg document.createElement(p); systemMsg.textContent System: + message; terminal.appendChild(systemMsg); // Limpiar el input del usuario document.getElementById(user-input).value ; } // Function to update the terminal with user input and AI response function updateTerminal(userInput, aiResponse, isSendingMessage false) { var terminal document.getElementById(terminal); lastUserInput userInput; // Guarda la última entrada del usuario // Append users input only if the AI response is Sending... if (aiResponse Sending...) { terminal.innerHTML + div classmessage-user>br>You: +userInput+/div>; var chatOnlyCheckbox document.getElementById(chat-only-checkbox); if (chatOnlyCheckbox.checked) { document.getElementById(user-input).placeholder Thinking...; //e.target.value Processing...; console.log(Processing message set.); } var imLuckyCheckbox document.getElementById(Im-lucky-checkbox); if (imLuckyCheckbox.checked) { document.getElementById(user-input).placeholder Im lucky!...; } } // Remove sending message if the AI response is ready var existingSendingMessage terminal.querySelector(.message-ai.sending); if (existingSendingMessage && aiResponse ! Sending...) { existingSendingMessage.remove(); e.target.value ; //borra el koan } if (aiResponse ! Sending...) { // Replace newlines with paragraph tags var formattedResponse aiResponse.replace(/\n/g, /p>p>); // Add paragraph tags at the beginning and end formattedResponse p>TT: + formattedResponse + /p>; lastAIResponse aiResponse; // Guarda la última respuesta de la IA terminal.insertAdjacentHTML(beforeend, formattedResponse); // Reset the placeholder to the default message after AI response document.getElementById(user-input).placeholder Demonstration of the new paradigm of AI that understands, which allows AI to talk, search and think, without the hallucinations or biases of Generative AI.; } // Autoscroll to the latest entry terminal.scrollTop terminal.scrollHeight; } // Function to display the extended answer with a different format function displayExtendedAnswer(extendedAnswer) { // Create a new div element for the extended answer let answerDiv document.createElement(div); answerDiv.className extended-answer-console; // Apply the new styling class // Avoid recreating the text node if it already exists if (answerDiv.firstChild && answerDiv.firstChild.nodeType Node.TEXT_NODE) { answerDiv.firstChild.nodeValue extendedAnswer; } else { answerDiv.textContent extendedAnswer; } // Append this div to your document where you want to display the extended answer document.getElementById(scraped-content-container).appendChild(answerDiv); } $(function() { $(.scraped-content-link, .url-link).on(click, function(e) { e.preventDefault(); const url this.dataset.url; alert(Mostrando contenido raspado para: + url); }); }); $(function(){ $(document).on(click, .show-scraped-content, function(e) { e.preventDefault(); var url $(this).attr(data-url); var llmResponse llmResponsesurl; if(llmResponse){ $(this).next(.extended-answer).remove(); if ($(this).text().trim() ( + )) { $(this).text(( - )); $(this).after(div classextended-answer> + llmResponse + /div>); } else { $(this).text(( + )); } } else { alert(Extended answer not available3); } }) }) document.getElementById(chat-only-checkbox).addEventListener(change, function() { if (this.checked) { document.getElementById(Im-lucky-checkbox).checked false; document.getElementById(deep-search-checkbox).checked false; } }); document.getElementById(Im-lucky-checkbox).addEventListener(change, function() { if (this.checked) { document.getElementById(chat-only-checkbox).checked false; document.getElementById(deep-search-checkbox).checked false; } }); document.getElementById(deep-search-checkbox).addEventListener(change, function() { if (this.checked) { document.getElementById(chat-only-checkbox).checked false; document.getElementById(Im-lucky-checkbox).checked false; } }); // New function to parse URL parameters function getUrlParameter(name) { name name.replace(/\/, \\).replace(/\/, \\); var regex new RegExp(\\?& + name + (^*)); var results regex.exec(location.search); return results null ? : decodeURIComponent(results1.replace(/\+/g, )); } // Function to automatically fill in the form and submit function autoFillAndSubmit() { var query getUrlParameter(q); var lucky getUrlParameter(lucky); if (query) { document.getElementById(user-input).value query; if (lucky true) { document.getElementById(Im-lucky-checkbox).checked true; } // Trigger the Enter key press event var event new KeyboardEvent(keypress, { key: Enter, keyCode: 13, which: 13, bubbles: true }); document.getElementById(user-input).dispatchEvent(event); } } // Call the function when the page loads window.onload autoFillAndSubmit; /script>/body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]