Skip to content

Instantly share code, notes, and snippets.

View raunakdoesdev's full-sized avatar

Raunak Chowdhuri raunakdoesdev

View GitHub Profile
@raunakdoesdev
raunakdoesdev / belief-verifier.ts
Last active May 11, 2026 04:59
Simplified belief verification: single Opus agent + Exa search (replaces 8-agent adversarial pipeline)
/**
* Simplified belief verification using a single Opus agent with Exa search tools.
*
* Replaces the 8-agent adversarial pipeline with one agent that can:
* - Search for supporting AND contradicting evidence via Exa
* - Distinguish first-person vs third-party sources
* - Render per-field verdicts with citations
*
* Usage:
* EXA_API_KEY=... ANTHROPIC_API_KEY=... npx tsx belief-verifier.ts

Background agents: autonomous app builder

This is an open-ended systems design and implementation challenge. There's no single correct architecture, and we don't expect you to finish every milestone in one day. We care about how you approach it: how you evaluate tools, how you use AI agents throughout, and the tradeoffs you make. We'll ask you to walk us through your thinking, so optimize for understanding and being able to explain your decisions, not just output.

You're encouraged to use AI coding agents (Claude Code, Cursor, Copilot, whatever you prefer) throughout this exercise. This isn't a test of whether you can write code from memory. We'll evaluate you on your understanding of the system you build and the decisions you made. Keep traces/logs of your agent interactions, we'll review them during the debrief.


The challenge

@raunakdoesdev
raunakdoesdev / claude_json_prefill.py
Created November 10, 2024 05:34
Force claude to output JSON by pre-filling the response with ```json
import anthropic
client = anthropic.Anthropic()
message = client.messages.create(
model="claude-3-5-sonnet-20241022",
max_tokens=1000,
temperature=0,
system="Always respond in JSON.",
messages=[
{"usage":{"num_pages":3},"result":{"type":"full","chunks":[{"content":"# Jazz Pharmaceuticals (JAZZ)\n\nRating: OUTPERFORM* Price (9 May 14, US$): 129.45 Target Price (US$): 170.00 52-Week Price Range: 55.28-174.98 Market Cap. (US$ m): 8,196.0 Enterprise Value (US$ m): 9,089.5\n\n*Target Price is for 12 months.\n\nResearch Analysts: Peter Sullivan, Ph.D. Seth Davis, M.D. John Tuld, M.D.\n\nFigure 1 JAZZ Stock Price Performance\n\nACCUMMULATE RECOMMENDATION/COMPANY UPDATE\n\n## Strong Q1 FY14 & Multiple Catalysts Ahead\n\n- Q1 Results: Jazz Pharmaceuticals reported strong Q1 results on Thursday, with revenue of $247 million vs. $196 million in Q1 of FY 13, representing 26% YoY growth. The GAAP Net Loss was $93 million vs. GAAP Net Income of $43 million in Q1 of FY 13, but $127 million of that was due to an upfront license fee and milestone payment for JZP-110. Adjusted Net Income was $101 million vs. $84 million in Q1 of FY 13. These figures were slightly ahead of Goldman Stanley estimates of $240 million in r
{
"usage": {
"num_pages": 63,
"num_fields": 1098
},
"result": [
{
"companyName": "MetLife",
"effectiveDate": null,
"benefitPlans": [
@raunakdoesdev
raunakdoesdev / visualize_bbox.py
Created May 17, 2024 20:39
Code snippet for visualizing bounding boxes
import requests
import os.path
from pdf2image.pdf2image import convert_from_path
from PIL import ImageDraw
pdf_path = os.path.expanduser("~/Downloads/research-highlight.pdf")
upload_form = requests.post("https://v1.api.reducto.ai/upload").json()
requests.put(upload_form["presigned_url"], data=open(pdf_path, "rb"))
response = requests.post(
{
"$ref": "#/definitions/extension",
"definitions": {
"extension": {
"type": "object",
"properties": {
"$schema": {
"type": "string"
},
"name": {
@raunakdoesdev
raunakdoesdev / qa_gpt.py
Last active December 12, 2022 17:34
Get GPT to answer questions with justifications, then extract those answers and justifications in a standardized format.
# Setup OpenAI GPT API
import openai
import textwrap
# Set the GPT-3 API key
openai.api_key = "YOUR_API_KEY"
def get_gpt_response(prompt, max_tokens=2048, temperature=0.7, n=1):
response = openai.Completion.create(
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<OfficeApp xmlns="http://schemas.microsoft.com/office/appforoffice/1.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0"
xsi:type="ContentApp">
<Id>03648872-fa1f-4c2d-b9aa-29ce4d0a2bbc</Id>
<Version>1.0.0.0</Version>
<ProviderName>Contoso</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="Oloren PPT Visualize"/>
‰PNG

IHDR  Ì Ú¦!m sRGB ®Îé gAMA ± üa úPLTE / L N !P "Q #S #U $V %X &Z &[ '] (_ (a )c *d *f +h ,j -l -m .n .o /o 0o 1o 2n 3n 4n5n6n
7m7m8m9m9m:l;l<l <l"=l$>l&>l'?l)@k+Ak,Ak.Bk/Ck1Dk2Dk3Ek5Fk6Fk7Gk8Hk:Ik;Ik<Jk=Kk>Kk@LkAMkBNkCNkDOkEPkFPkGQkHRkISkJSkKTkLUkMUkNVkOWlPXlQXlRYlSZlTZlU[lV\lW]mX]mY^mZ_m[_m\`m]an^bn_bn_cn`dnaeobeocfodgoegofhpgiphjpikqjlqkmqlmrmnrnorooropspqsqrsrrtsstttuuuuvvvwwvxxvyxwzyw{zw{{x|{x}|x~}x~x€~xx‚€xƒx„x…‚x†ƒx‡„xˆ…x‰…xІx‹‡xŒˆxˆxމxŠx‹x‘Œx’Œx“x”Žx•x–w—w˜‘w™’wš“w›“wœ”w•wž–vŸ—v ˜v¡˜v¢™v£šu¤›u¥œu¦œu§u¨žt©Ÿtª t«¡t¬¡s­¢s®£s¯¤s°¥r±¦r²¦r´§qµ¨q¶©q·ªp¸«p¹«pº¬o»­o¼®n½¯n¾°n¿±mÀ±mÁ²l³lôlŵkƶkÇ·jȸjɸiʹi˺hÌ»hͼgνgоfÑ¿fÒÀeÓÀeÔÁdÕÂcÖÃc×ÄbØÅaÙÆaÛÇ`ÜÈ`ÝÉ_ÞÊ^ßË]àË]áÌ\ãÍ[äÎ[åÏZæÐYçÑXèÒWéÓVëÔVìÕUíÖTî×SïØRðÙQñÚPóÛOôÜNõÝMöÞL÷ßKùàIúàHûáGüâFýãEÿäCÿåBÿæBÿçCÿèDÿéEŸ‘+Û€rU pHYs à ÃÇo¨d HIDATx^íÔåÒ.€A8‚H7Ò!twww
J# ÝÝÝ%Jw(¤”bJwIKfx†ï½þ²{;ð=6â°aÃ~‘2rFɨùaFËèùQÆÈ3fÆÊØ'ãf¼ŒŸ 2a&ÊÄ“dҁÉò“L>0E¦ÌT™:ÓdÚL—é3C~š3SfÎ,™5³eöÌ‘ŸeÎÌ•¹3OæÍ|™? dÁ,”…