{ "nbformat": 4, "nbformat_minor": 0, "metadata": { "colab": { "provenance": [] }, "kernelspec": { "name": "python3", "display_name": "Python 3" }, "language_info": { "name": "python" } }, "cells": [ { "cell_type": "code", "execution_count": 8, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "collapsed": true, "id": "PIHcHl6_O7jf", "outputId": "9fe4d065-2503-4d3c-b65f-ac150eb5a067" }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Requirement already satisfied: chromadb in /usr/local/lib/python3.10/dist-packages (0.5.13)\n", "Requirement already satisfied: build>=1.0.3 in /usr/local/lib/python3.10/dist-packages (from chromadb) (1.2.2.post1)\n", "Requirement already satisfied: pydantic>=1.9 in /usr/local/lib/python3.10/dist-packages (from chromadb) (2.9.2)\n", "Requirement already satisfied: chroma-hnswlib==0.7.6 in /usr/local/lib/python3.10/dist-packages (from chromadb) (0.7.6)\n", "Requirement already satisfied: fastapi>=0.95.2 in /usr/local/lib/python3.10/dist-packages (from chromadb) (0.115.2)\n", "Requirement already satisfied: uvicorn>=0.18.3 in /usr/local/lib/python3.10/dist-packages (from uvicorn[standard]>=0.18.3->chromadb) (0.32.0)\n", "Requirement already satisfied: numpy>=1.22.5 in /usr/local/lib/python3.10/dist-packages (from chromadb) (1.26.4)\n", "Requirement already satisfied: posthog>=2.4.0 in /usr/local/lib/python3.10/dist-packages (from chromadb) (3.7.0)\n", "Requirement already satisfied: typing-extensions>=4.5.0 in /usr/local/lib/python3.10/dist-packages (from chromadb) (4.12.2)\n", "Requirement already satisfied: onnxruntime>=1.14.1 in /usr/local/lib/python3.10/dist-packages (from chromadb) (1.19.2)\n", "Requirement already satisfied: opentelemetry-api>=1.2.0 in /usr/local/lib/python3.10/dist-packages (from chromadb) (1.27.0)\n", "Requirement already satisfied: opentelemetry-exporter-otlp-proto-grpc>=1.2.0 in /usr/local/lib/python3.10/dist-packages (from chromadb) (1.27.0)\n", "Requirement already satisfied: opentelemetry-instrumentation-fastapi>=0.41b0 in /usr/local/lib/python3.10/dist-packages (from chromadb) (0.48b0)\n", "Requirement already satisfied: opentelemetry-sdk>=1.2.0 in /usr/local/lib/python3.10/dist-packages (from chromadb) (1.27.0)\n", "Requirement already satisfied: tokenizers>=0.13.2 in /usr/local/lib/python3.10/dist-packages (from chromadb) (0.19.1)\n", "Requirement already satisfied: pypika>=0.48.9 in /usr/local/lib/python3.10/dist-packages (from chromadb) (0.48.9)\n", "Requirement already satisfied: tqdm>=4.65.0 in /usr/local/lib/python3.10/dist-packages (from chromadb) (4.66.5)\n", "Requirement already satisfied: overrides>=7.3.1 in /usr/local/lib/python3.10/dist-packages (from chromadb) (7.7.0)\n", "Requirement already satisfied: importlib-resources in /usr/local/lib/python3.10/dist-packages (from chromadb) (6.4.5)\n", "Requirement already satisfied: grpcio>=1.58.0 in /usr/local/lib/python3.10/dist-packages (from chromadb) (1.64.1)\n", "Requirement already satisfied: bcrypt>=4.0.1 in /usr/local/lib/python3.10/dist-packages (from chromadb) (4.2.0)\n", "Requirement already satisfied: typer>=0.9.0 in /usr/local/lib/python3.10/dist-packages (from chromadb) (0.12.5)\n", "Requirement already satisfied: kubernetes>=28.1.0 in /usr/local/lib/python3.10/dist-packages (from chromadb) (31.0.0)\n", "Requirement already satisfied: tenacity>=8.2.3 in /usr/local/lib/python3.10/dist-packages (from chromadb) (8.5.0)\n", "Requirement already satisfied: PyYAML>=6.0.0 in /usr/local/lib/python3.10/dist-packages (from chromadb) (6.0.2)\n", "Requirement already satisfied: mmh3>=4.0.1 in /usr/local/lib/python3.10/dist-packages (from chromadb) (5.0.1)\n", "Requirement already satisfied: orjson>=3.9.12 in /usr/local/lib/python3.10/dist-packages (from chromadb) (3.10.7)\n", "Requirement already satisfied: httpx>=0.27.0 in /usr/local/lib/python3.10/dist-packages (from chromadb) (0.27.2)\n", "Requirement already satisfied: rich>=10.11.0 in /usr/local/lib/python3.10/dist-packages (from chromadb) (13.9.2)\n", "Requirement already satisfied: packaging>=19.1 in /usr/local/lib/python3.10/dist-packages (from build>=1.0.3->chromadb) (24.1)\n", "Requirement already satisfied: pyproject_hooks in /usr/local/lib/python3.10/dist-packages (from build>=1.0.3->chromadb) (1.2.0)\n", "Requirement already satisfied: tomli>=1.1.0 in /usr/local/lib/python3.10/dist-packages (from build>=1.0.3->chromadb) (2.0.2)\n", "Requirement already satisfied: starlette<0.41.0,>=0.37.2 in /usr/local/lib/python3.10/dist-packages (from fastapi>=0.95.2->chromadb) (0.40.0)\n", "Requirement already satisfied: anyio in /usr/local/lib/python3.10/dist-packages (from httpx>=0.27.0->chromadb) (3.7.1)\n", "Requirement already satisfied: certifi in /usr/local/lib/python3.10/dist-packages (from httpx>=0.27.0->chromadb) (2024.8.30)\n", "Requirement already satisfied: httpcore==1.* in /usr/local/lib/python3.10/dist-packages (from httpx>=0.27.0->chromadb) (1.0.6)\n", "Requirement already satisfied: idna in /usr/local/lib/python3.10/dist-packages (from httpx>=0.27.0->chromadb) (3.10)\n", "Requirement already satisfied: sniffio in /usr/local/lib/python3.10/dist-packages (from httpx>=0.27.0->chromadb) (1.3.1)\n", "Requirement already satisfied: h11<0.15,>=0.13 in /usr/local/lib/python3.10/dist-packages (from httpcore==1.*->httpx>=0.27.0->chromadb) (0.14.0)\n", "Requirement already satisfied: six>=1.9.0 in /usr/local/lib/python3.10/dist-packages (from kubernetes>=28.1.0->chromadb) (1.16.0)\n", "Requirement already satisfied: python-dateutil>=2.5.3 in /usr/local/lib/python3.10/dist-packages (from kubernetes>=28.1.0->chromadb) (2.8.2)\n", "Requirement already satisfied: google-auth>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from kubernetes>=28.1.0->chromadb) (2.27.0)\n", "Requirement already satisfied: websocket-client!=0.40.0,!=0.41.*,!=0.42.*,>=0.32.0 in /usr/local/lib/python3.10/dist-packages (from kubernetes>=28.1.0->chromadb) (1.8.0)\n", "Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from kubernetes>=28.1.0->chromadb) (2.32.3)\n", "Requirement already satisfied: requests-oauthlib in /usr/local/lib/python3.10/dist-packages (from kubernetes>=28.1.0->chromadb) (1.3.1)\n", "Requirement already satisfied: oauthlib>=3.2.2 in /usr/local/lib/python3.10/dist-packages (from kubernetes>=28.1.0->chromadb) (3.2.2)\n", "Requirement already satisfied: urllib3>=1.24.2 in /usr/local/lib/python3.10/dist-packages (from kubernetes>=28.1.0->chromadb) (2.2.3)\n", "Requirement already satisfied: durationpy>=0.7 in /usr/local/lib/python3.10/dist-packages (from kubernetes>=28.1.0->chromadb) (0.9)\n", "Requirement already satisfied: coloredlogs in /usr/local/lib/python3.10/dist-packages (from onnxruntime>=1.14.1->chromadb) (15.0.1)\n", "Requirement already satisfied: flatbuffers in /usr/local/lib/python3.10/dist-packages (from onnxruntime>=1.14.1->chromadb) (24.3.25)\n", "Requirement already satisfied: protobuf in /usr/local/lib/python3.10/dist-packages (from onnxruntime>=1.14.1->chromadb) (3.20.3)\n", "Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from onnxruntime>=1.14.1->chromadb) (1.13.3)\n", "Requirement already satisfied: deprecated>=1.2.6 in /usr/local/lib/python3.10/dist-packages (from opentelemetry-api>=1.2.0->chromadb) (1.2.14)\n", "Requirement already satisfied: importlib-metadata<=8.4.0,>=6.0 in /usr/local/lib/python3.10/dist-packages (from opentelemetry-api>=1.2.0->chromadb) (8.4.0)\n", "Requirement already satisfied: googleapis-common-protos~=1.52 in /usr/local/lib/python3.10/dist-packages (from opentelemetry-exporter-otlp-proto-grpc>=1.2.0->chromadb) (1.65.0)\n", "Requirement already satisfied: opentelemetry-exporter-otlp-proto-common==1.27.0 in /usr/local/lib/python3.10/dist-packages (from opentelemetry-exporter-otlp-proto-grpc>=1.2.0->chromadb) (1.27.0)\n", "Requirement already satisfied: opentelemetry-proto==1.27.0 in /usr/local/lib/python3.10/dist-packages (from opentelemetry-exporter-otlp-proto-grpc>=1.2.0->chromadb) (1.27.0)\n", "Requirement already satisfied: opentelemetry-instrumentation-asgi==0.48b0 in /usr/local/lib/python3.10/dist-packages (from opentelemetry-instrumentation-fastapi>=0.41b0->chromadb) (0.48b0)\n", "Requirement already satisfied: opentelemetry-instrumentation==0.48b0 in /usr/local/lib/python3.10/dist-packages (from opentelemetry-instrumentation-fastapi>=0.41b0->chromadb) (0.48b0)\n", "Requirement already satisfied: opentelemetry-semantic-conventions==0.48b0 in /usr/local/lib/python3.10/dist-packages (from opentelemetry-instrumentation-fastapi>=0.41b0->chromadb) (0.48b0)\n", "Requirement already satisfied: opentelemetry-util-http==0.48b0 in /usr/local/lib/python3.10/dist-packages (from opentelemetry-instrumentation-fastapi>=0.41b0->chromadb) (0.48b0)\n", "Requirement already satisfied: setuptools>=16.0 in /usr/local/lib/python3.10/dist-packages (from opentelemetry-instrumentation==0.48b0->opentelemetry-instrumentation-fastapi>=0.41b0->chromadb) (71.0.4)\n", "Requirement already satisfied: wrapt<2.0.0,>=1.0.0 in /usr/local/lib/python3.10/dist-packages (from opentelemetry-instrumentation==0.48b0->opentelemetry-instrumentation-fastapi>=0.41b0->chromadb) (1.16.0)\n", "Requirement already satisfied: asgiref~=3.0 in /usr/local/lib/python3.10/dist-packages (from opentelemetry-instrumentation-asgi==0.48b0->opentelemetry-instrumentation-fastapi>=0.41b0->chromadb) (3.8.1)\n", "Requirement already satisfied: monotonic>=1.5 in /usr/local/lib/python3.10/dist-packages (from posthog>=2.4.0->chromadb) (1.6)\n", "Requirement already satisfied: backoff>=1.10.0 in /usr/local/lib/python3.10/dist-packages (from posthog>=2.4.0->chromadb) (2.2.1)\n", "Requirement already satisfied: annotated-types>=0.6.0 in /usr/local/lib/python3.10/dist-packages (from pydantic>=1.9->chromadb) (0.7.0)\n", "Requirement already satisfied: pydantic-core==2.23.4 in /usr/local/lib/python3.10/dist-packages (from pydantic>=1.9->chromadb) (2.23.4)\n", "Requirement already satisfied: markdown-it-py>=2.2.0 in /usr/local/lib/python3.10/dist-packages (from rich>=10.11.0->chromadb) (3.0.0)\n", "Requirement already satisfied: pygments<3.0.0,>=2.13.0 in /usr/local/lib/python3.10/dist-packages (from rich>=10.11.0->chromadb) (2.18.0)\n", "Requirement already satisfied: huggingface-hub<1.0,>=0.16.4 in /usr/local/lib/python3.10/dist-packages (from tokenizers>=0.13.2->chromadb) (0.24.7)\n", "Requirement already satisfied: click>=8.0.0 in /usr/local/lib/python3.10/dist-packages (from typer>=0.9.0->chromadb) (8.1.7)\n", "Requirement already satisfied: shellingham>=1.3.0 in /usr/local/lib/python3.10/dist-packages (from typer>=0.9.0->chromadb) (1.5.4)\n", "Requirement already satisfied: httptools>=0.5.0 in /usr/local/lib/python3.10/dist-packages (from uvicorn[standard]>=0.18.3->chromadb) (0.6.2)\n", "Requirement already satisfied: python-dotenv>=0.13 in /usr/local/lib/python3.10/dist-packages (from uvicorn[standard]>=0.18.3->chromadb) (1.0.1)\n", "Requirement already satisfied: uvloop!=0.15.0,!=0.15.1,>=0.14.0 in /usr/local/lib/python3.10/dist-packages (from uvicorn[standard]>=0.18.3->chromadb) (0.21.0)\n", "Requirement already satisfied: watchfiles>=0.13 in /usr/local/lib/python3.10/dist-packages (from uvicorn[standard]>=0.18.3->chromadb) (0.24.0)\n", "Requirement already satisfied: websockets>=10.4 in /usr/local/lib/python3.10/dist-packages (from uvicorn[standard]>=0.18.3->chromadb) (13.1)\n", "Requirement already satisfied: cachetools<6.0,>=2.0.0 in /usr/local/lib/python3.10/dist-packages (from google-auth>=1.0.1->kubernetes>=28.1.0->chromadb) (5.5.0)\n", "Requirement already satisfied: pyasn1-modules>=0.2.1 in /usr/local/lib/python3.10/dist-packages (from google-auth>=1.0.1->kubernetes>=28.1.0->chromadb) (0.4.1)\n", "Requirement already satisfied: rsa<5,>=3.1.4 in /usr/local/lib/python3.10/dist-packages (from google-auth>=1.0.1->kubernetes>=28.1.0->chromadb) (4.9)\n", "Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from huggingface-hub<1.0,>=0.16.4->tokenizers>=0.13.2->chromadb) (3.16.1)\n", "Requirement already satisfied: fsspec>=2023.5.0 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub<1.0,>=0.16.4->tokenizers>=0.13.2->chromadb) (2024.6.1)\n", "Requirement already satisfied: zipp>=0.5 in /usr/local/lib/python3.10/dist-packages (from importlib-metadata<=8.4.0,>=6.0->opentelemetry-api>=1.2.0->chromadb) (3.20.2)\n", "Requirement already satisfied: mdurl~=0.1 in /usr/local/lib/python3.10/dist-packages (from markdown-it-py>=2.2.0->rich>=10.11.0->chromadb) (0.1.2)\n", "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->kubernetes>=28.1.0->chromadb) (3.4.0)\n", "Requirement already satisfied: exceptiongroup in /usr/local/lib/python3.10/dist-packages (from anyio->httpx>=0.27.0->chromadb) (1.2.2)\n", "Requirement already satisfied: humanfriendly>=9.1 in /usr/local/lib/python3.10/dist-packages (from coloredlogs->onnxruntime>=1.14.1->chromadb) (10.0)\n", "Requirement already satisfied: mpmath<1.4,>=1.1.0 in /usr/local/lib/python3.10/dist-packages (from sympy->onnxruntime>=1.14.1->chromadb) (1.3.0)\n", "Requirement already satisfied: pyasn1<0.7.0,>=0.4.6 in /usr/local/lib/python3.10/dist-packages (from pyasn1-modules>=0.2.1->google-auth>=1.0.1->kubernetes>=28.1.0->chromadb) (0.6.1)\n" ] } ], "source": [ "%pip install -qU langchain-groq\n", "!pip install chromadb" ] }, { "cell_type": "code", "source": [ "%pip install -qU langchain_community beautifulsoup4" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "collapsed": true, "id": "BcrwN2IJgTK-", "outputId": "266f99f8-8f16-4a2f-c9b6-950dc14b13c0" }, "execution_count": 12, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.4/2.4 MB\u001b[0m \u001b[31m27.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.0/1.0 MB\u001b[0m \u001b[31m48.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m49.3/49.3 kB\u001b[0m \u001b[31m3.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25h" ] } ] }, { "cell_type": "code", "source": [ "!pip install playwright" ], "metadata": { "collapsed": true, "colab": { "base_uri": "https://localhost:8080/" }, "id": "xkni7hWljpWt", "outputId": "84c9768f-cd49-435d-a5f8-089e38f6bdd9" }, "execution_count": 26, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Collecting playwright\n", " Downloading playwright-1.47.0-py3-none-manylinux1_x86_64.whl.metadata (3.5 kB)\n", "Collecting greenlet==3.0.3 (from playwright)\n", " Downloading greenlet-3.0.3-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.metadata (3.8 kB)\n", "Collecting pyee==12.0.0 (from playwright)\n", " Downloading pyee-12.0.0-py3-none-any.whl.metadata (2.8 kB)\n", "Requirement already satisfied: typing-extensions in /usr/local/lib/python3.10/dist-packages (from pyee==12.0.0->playwright) (4.12.2)\n", "Downloading playwright-1.47.0-py3-none-manylinux1_x86_64.whl (38.1 MB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m38.1/38.1 MB\u001b[0m \u001b[31m34.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hDownloading greenlet-3.0.3-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (616 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m616.0/616.0 kB\u001b[0m \u001b[31m36.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hDownloading pyee-12.0.0-py3-none-any.whl (14 kB)\n", "Installing collected packages: pyee, greenlet, playwright\n", " Attempting uninstall: greenlet\n", " Found existing installation: greenlet 3.1.1\n", " Uninstalling greenlet-3.1.1:\n", " Successfully uninstalled greenlet-3.1.1\n", "Successfully installed greenlet-3.0.3 playwright-1.47.0 pyee-12.0.0\n" ] } ] }, { "cell_type": "code", "source": [ "from langchain_groq import ChatGroq\n", "\n", "llm = ChatGroq(\n", " model=\"llama-3.2-1b-preview\",\n", " temperature=0,\n", " max_tokens=None,\n", " timeout=None,\n", " groq_api_key = \"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\"\n", ")\n", "\n", "response = llm.invoke(\"Write a cold email to Professor at Computer Science and Engineering Department to request for an internship in Trust Lab in the area of Machine Learning\")\n", "\n", "print(response.content)" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "Abvttqe4QUvG", "outputId": "84940c8f-70bd-4c88-bdf2-55e48aaac42d" }, "execution_count": 10, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Here's a sample cold email:\n", "\n", "Subject: Application for Internship in Trust Lab - Machine Learning\n", "\n", "Dear Professor [Professor's Name],\n", "\n", "I hope this email finds you well. My name is [Your Name], and I am a [Your Current Degree Level, e.g., undergraduate, graduate] student in Computer Science and Engineering at [University Name]. I am writing to express my interest in an internship opportunity at the Trust Lab, a leading research group in Machine Learning, within the Computer Science and Engineering Department.\n", "\n", "As a student of Computer Science and Engineering, I have been fascinated by the intersection of Machine Learning and Trust, and I am eager to contribute to the research and development of innovative solutions in this area. The Trust Lab's work on trust-aware machine learning algorithms and their applications in various domains aligns with my academic interests and career goals.\n", "\n", "I am particularly drawn to the Trust Lab's research on [specific area of research, e.g., trust-aware neural networks, trust-based decision-making systems]. I believe that my academic background, research experience, and passion for Machine Learning make me an ideal candidate for an internship at the Trust Lab.\n", "\n", "I would be thrilled to discuss my application and how I can contribute to the Trust Lab's research efforts. I have attached my resume and a brief research proposal outlining my interests and goals. I would appreciate the opportunity to schedule a meeting or call to discuss my application further.\n", "\n", "Thank you for considering my application. I look forward to the opportunity to discuss this further.\n", "\n", "Best regards,\n", "\n", "[Your Name]\n", "\n", "Attachments:\n", "\n", "* Resume\n", "* Research proposal (optional)\n", "\n", "Note: Make sure to customize the email by replacing [Professor's Name], [University Name], and [Your Name] with the actual information. Also, proofread the email for grammar and spelling errors before sending it.\n" ] } ] }, { "cell_type": "code", "source": [ "from langchain_community.document_loaders import WebBaseLoader\n", "\n", "loader = WebBaseLoader(\"https://job-boards.greenhouse.io/notion/jobs/5595762003\")\n", "\n", "career_page_data = loader.load().pop().page_content\n", "print(career_page_data)\n" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "collapsed": true, "id": "TgiNfagVf-pG", "outputId": "dea4db80-8aac-472f-e636-cff9ce8c9dcf" }, "execution_count": 39, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Job Application for AI Product Engineer at NotionBack to jobsAI Product EngineerSan Francisco, California; New York, New York;ApplyAbout Us:\n", "We're on a mission to make it possible for every person, team, and company to be able to tailor their software to solve any problem and take on any challenge. Computers may be our most powerful tools, but most of us can't build or modify the software we use on them every day. At Notion, we want to change this with focus, design, and craft.\n", "We've been working on this together since 2016, and have customers like Pixar, Mitsubishi, Figma, Plaid, Match Group, and thousands more on this journey with us. Today, we're growing fast and excited for new teammates to join us who are the best at what they do. We're passionate about building a company as diverse and creative as the millions of people Notion reaches worldwide.\n", "Notion is an in person company, and currently requires its employees to come to the office for two Anchor Days (Mondays & Thursdays) and requests that employees spend the majority of their week in the office (including a third day).\n", "About The Role:\n", "We are looking for an AI Product Engineer to join our small but nimble AI team whose mission is to make Notion an AI-powered product. As an AI Product Engineer, you will work on developing and implementing AI-powered products, incorporating large language models (LLMs), embeddings, and other AI technologies into Notion’s product.\n", "What you’ll achieve:\n", "\n", "Work with the team to prototype and experiment with new AI features\n", "Productionize and launch new AI technology integrations into Notion’s core product\n", "Collaborate with cross-functional teams to deliver product features on time\n", "Stay up-to-date with the latest AI technologies and trends\n", "\n", "Skills You'll Need to Bring:\n", "\n", "Expertise building and prototyping: You understand how parts of a system fit together, from the user interface to the data model. You are familiar with relational database systems like Postgres or MySQL, and have experience building products from ground up.\n", "Shipping quality user interfaces: You partner closely with product and design to craft beautiful user experiences for large audiences, leveraging web technologies like HTML, CSS, JavaScript, and a modern UI framework like React.\n", "Problem-solving: You approach problems holistically, starting with a clear and accurate understanding of the context. You think critically about the implications of what you're building and how it will impact real people's lives. You can navigate ambiguity flawlessly, decompose complex problems into clean solutions, while also balancing the business impact of what you’re building.\n", "Empathetic communication and collaboration: You communicate nuanced ideas clearly, whether you're explaining technical decisions in writing or brainstorming in real time. In disagreements, you engage thoughtfully with other perspectives and compromise when needed. You enjoy collaborating with both fellow engineers and cross-functional partners. You are a lifelong learner and invest in both your own growth and the growth, learning, and development of your teammates.\n", "Impact-orientation and user focus: You care about business impact and prioritize projects accordingly. You understand the balance between craft, speed, and the bottom line. You think critically about the implications of what you're building, and how it shapes real people's lives. You understand that reach comes with responsibility for our impact—good and bad. Work isn't a solo endeavor for you, and you enjoy collaborating cross-functionally to accomplish shared goals.\n", "\n", "Nice to Haves:\n", "\n", "You have extensive experience building AI products using LLMs, embeddings and other ML technologies.\n", "You're proficient with any part of our technology stack: React, TypeScript, Node.js, and Postgres.\n", "You have experience driving teams toward shared goals and can balance business priorities with individuals’ strengths, areas of interest, and career development goals.\n", "You've heard of computing pioneers like Ada Lovelace, Douglas Engelbart, Alan Kay, and others—and understand why we're big fans of their work.\n", "You have interests outside of technology, such as in art, history, or social sciences.\n", "\n", "\n", "We hire talented and passionate people from a variety of backgrounds because we want our global employee base to represent the wide diversity of our customers. If you’re excited about a role but your past experience doesn’t align perfectly with every bullet point listed in the job description, we still encourage you to apply. If you’re a builder at heart, share our company values, and enthusiastic about making software toolmaking ubiquitous, we want to hear from you.\n", "Notion is proud to be an equal opportunity employer. We do not discriminate in hiring or any employment decision based on race, color, religion, national origin, age, sex (including pregnancy, childbirth, or related medical conditions), marital status, ancestry, physical or mental disability, genetic information, veteran status, gender identity or expression, sexual orientation, or other applicable legally protected characteristic. Notion considers qualified applicants with criminal histories, consistent with applicable federal, state and local law. Notion is also committed to providing reasonable accommodations for qualified individuals with disabilities and disabled veterans in our job application procedures. If you need assistance or an accommodation due to a disability, please let your recruiter know.\n", "Notion is committed to providing highly competitive cash compensation, equity, and benefits. The compensation offered for this role will be based on multiple factors such as location, the role’s scope and complexity, and the candidate’s experience and expertise, and may vary from the range provided below. For roles based in San Francisco, the estimated base salary range for this role is $150,000 - $280,000 per year. \n", "#LI-OnsiteApply for this job*indicates a required fieldFirst Name*Last Name*Email*Phone*Resume/CV*AttachAttachDropboxGoogle DriveEnter manuallyEnter manuallyAccepted file types: pdf, doc, docx, txt, rtfCover LetterAttachAttachDropboxGoogle DriveEnter manuallyEnter manuallyAccepted file types: pdf, doc, docx, txt, rtfStarting August 1st 2022, employees across the globe will work and collaborate together in our offices for two Anchor Days each week. The other three days are meant to be flexible; the offices will be open and everyone’s encouraged to come in, but you can also work from home as well.\n", "Notion will consider requests for accommodations to this policy. When requested, Notion will provide a reasonable accommodation for physical or mental disabilities, or other reasons recognized by applicable law.\n", "Please confirm you have read and understand our return to office policy.*Select...Will you now or in the future require Notion to sponsor an immigration case in order to employ you? \n", "\n", "*Select...If you’ll require Notion to commence, i.e., “sponsor,” an immigration or work permit case in order to employ you, either now or at some point in the near future, then you should answer yes. An example of an immigration or work permit case that may require sponsorship now or in the future would be an H-1B or other employment-based work permit sponsorship.What are the pronouns that you would like our team to use when addressing you? Select...Why do you want to work at Notion?*LinkedIn ProfileWebsite or PortfolioHow did you hear about this opportunity? (select all that apply) Select...Voluntary Self-Identification\n", "For government reporting purposes, we ask candidates to respond to the below self-identification survey.\n", "Completion of the form is entirely voluntary. Whatever your decision, it will not be considered in the hiring\n", "process or thereafter. Any information that you do provide will be recorded and maintained in a\n", "confidential file.\n", "As set forth in Notion’s Equal Employment Opportunity policy,\n", "we do not discriminate on the basis of any protected group status under any applicable law.\n", "GenderSelect...Are you Hispanic/Latino?Select...Race & Ethnicity Definitions\n", " If you believe you belong to any of the categories of protected veterans listed below, please indicate by making the appropriate selection.\n", " As a government contractor subject to the Vietnam Era Veterans Readjustment Assistance Act (VEVRAA), we request this information in order to measure\n", " the effectiveness of the outreach and positive recruitment efforts we undertake pursuant to VEVRAA. Classification of protected categories\n", " is as follows:\n", "\n", "A \"disabled veteran\" is one of the following: a veteran of the U.S. military, ground, naval or air service who is entitled to compensation (or who but for the receipt of military retired pay would be entitled to compensation) under laws administered by the Secretary of Veterans Affairs; or a person who was discharged or released from active duty because of a service-connected disability.\n", "A \"recently separated veteran\" means any veteran during the three-year period beginning on the date of such veteran's discharge or release from active duty in the U.S. military, ground, naval, or air service.\n", "An \"active duty wartime or campaign badge veteran\" means a veteran who served on active duty in the U.S. military, ground, naval or air service during a war, or in a campaign or expedition for which a campaign badge has been authorized under the laws administered by the Department of Defense.\n", "An \"Armed forces service medal veteran\" means a veteran who, while serving on active duty in the U.S. military, ground, naval or air service, participated in a United States military operation for which an Armed Forces service medal was awarded pursuant to Executive Order 12985.\n", "Veteran StatusSelect...Voluntary Self-Identification of Disability\n", "\n", "\n", "Form CC-305\n", "Page 1 of 1\n", "\n", "\n", "OMB Control Number 1250-0005\n", "Expires 04/30/2026\n", "\n", "\n", "\n", "Why are you being asked to complete this form?\n", "We are a federal contractor or subcontractor. The law requires us to provide equal employment opportunity to qualified people with disabilities. We have a goal of having at least 7% of our workers as people with disabilities. The law says we must measure our progress towards this goal. To do this, we must ask applicants and employees if they have a disability or have ever had one. People can become disabled, so we need to ask this question at least every five years.\n", "Completing this form is voluntary, and we hope that you will choose to do so. Your answer is confidential. No one who makes hiring decisions will see it. Your decision to complete the form and your answer will not harm you in any way. If you want to learn more about the law or this form, visit the U.S. Department of Labor’s Office of Federal Contract Compliance Programs (OFCCP) website at www.dol.gov/ofccp.\n", "How do you know if you have a disability?\n", "A disability is a condition that substantially limits one or more of your “major life activities.” If you have or have ever had such a condition, you are a person with a disability. Disabilities include, but are not limited to:\n", "\n", "Alcohol or other substance use disorder (not currently using drugs illegally)\n", "Autoimmune disorder, for example, lupus, fibromyalgia, rheumatoid arthritis, HIV/AIDS\n", "Blind or low vision\n", "Cancer (past or present)\n", "Cardiovascular or heart disease\n", "Celiac disease\n", "Cerebral palsy\n", "Deaf or serious difficulty hearing\n", "Diabetes\n", "Disfigurement, for example, disfigurement caused by burns, wounds, accidents, or congenital disorders\n", "Epilepsy or other seizure disorder\n", "Gastrointestinal disorders, for example, Crohn's Disease, irritable bowel syndrome\n", "Intellectual or developmental disability\n", "Mental health conditions, for example, depression, bipolar disorder, anxiety disorder, schizophrenia, PTSD\n", "Missing limbs or partially missing limbs\n", "Mobility impairment, benefiting from the use of a wheelchair, scooter, walker, leg brace(s) and/or other supports\n", "Nervous system condition, for example, migraine headaches, Parkinson’s disease, multiple sclerosis (MS)\n", "Neurodivergence, for example, attention-deficit/hyperactivity disorder (ADHD), autism spectrum disorder, dyslexia, dyspraxia, other learning disabilities\n", "Partial or complete paralysis (any cause)\n", "Pulmonary or respiratory conditions, for example, tuberculosis, asthma, emphysema\n", "Short stature (dwarfism)\n", "Traumatic brain injury\n", "\n", "Disability StatusSelect...PUBLIC BURDEN STATEMENT: According to the Paperwork Reduction Act of 1995 no persons are required to respond to a collection of information unless such collection displays a valid OMB control number. This survey should take about 5 minutes to complete.\n", "Submit applicationPowered byGreenhouseRead our Privacy Policy\n" ] } ] }, { "cell_type": "code", "source": [ "from langchain_core.prompts import PromptTemplate\n", "import json\n", "\n", "prompt_template = PromptTemplate.from_template(\n", " \"\"\"\n", " ### SCRAPED TEXT FROM WEBSITE:\n", " {page_data}\n", " ### INSTRUCTION:\n", " The scraped text is from the career's page of a website.\n", " Your job is to extract the job postings and return them in JSON format containing the following keys: `role`, `experience`, `skills` and `description`. The skills sections shouldn't be in dictionary format but in list.\n", " Only return the valid JSON.\n", " ### VALID JSON (NO PREAMBLE):\n", " \"\"\"\n", ")\n", "\n", "chain_template = prompt_template | llm\n", "response = chain_template.invoke({\"page_data\": career_page_data})\n", "type(response.content)\n", "# Assuming response.content is already a dictionary/list (deserialized JSON)\n", "#type(print(response.content.strip(\"```json\").strip(\"```\")))\n", "\n" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "wrqaEn0Uoa8Z", "outputId": "050524bc-8b07-44ab-dd0c-a31ba40808b4" }, "execution_count": 59, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "str" ] }, "metadata": {}, "execution_count": 59 } ] }, { "cell_type": "code", "source": [ "print(response.content)" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "fWOOba6hz6ST", "outputId": "ed5979a1-c40e-4e7d-b49d-b0b189427771" }, "execution_count": 60, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "```json\n", "{\n", " \"role\": \"AI Product Engineer\",\n", " \"experience\": {\n", " \"years\": 0,\n", " \"education\": {\n", " \"degrees\": []\n", " },\n", " \"training\": []\n", " },\n", " \"skills\": [\n", " \"Expertise building and prototyping\",\n", " \"Shipping quality user interfaces\",\n", " \"Problem-solving\",\n", " \"Empathetic communication and collaboration\",\n", " \"Impact-orientation and user focus\",\n", " \"Nice to Haves: Extensive experience building AI products using LLMs, embeddings and other ML technologies, Proficient with React, TypeScript, Node.js, and Postgres, Experience driving teams toward shared goals and balancing business priorities with individuals’ strengths, areas of interest, and career development goals\"\n", " ],\n", " \"description\": \"We're on a mission to make it possible for every person, team, and company to be able to tailor their software to solve any problem and take on any challenge. Computers may be our most powerful tools, but most of us can't build or modify the software we use on them every day. At Notion, we want to change this with focus, design, and craft. We've been working on this together since 2016, and have customers like Pixar, Mitsubishi, Figma, Plaid, Match Group, and thousands more on this journey with us. Today, we're growing fast and excited for new teammates to join us who are the best at what they do. We're passionate about building a company as diverse and creative as the millions of people Notion reaches worldwide. Notion is an in-person company, and currently requires its employees to come to the office for two Anchor Days (Mondays & Thursdays) and requests that employees spend the majority of their week in the office (including a third day). About The Role: We are looking for an AI Product Engineer to join our small but nimble AI team whose mission is to make Notion an AI-powered product. As an AI Product Engineer, you will work on developing and implementing AI-powered products, incorporating large language models (LLMs), embeddings, and other AI technologies into Notion’s product. What you’ll achieve: Work with the team to prototype and experiment with new AI features Productionize and launch new AI technology integrations into Notion’s core product Collaborate with cross-functional teams to deliver product features on time Stay up-to-date with the latest AI technologies and trends. Skills You'll Need to Bring: Expertise building and prototyping: You understand how parts of a system fit together, from the user interface to the data model. You are familiar with relational database systems like Postgres or MySQL, and have experience building products from ground up. Shipping quality user interfaces: You partner closely with product and design to craft beautiful user experiences for large audiences, leveraging web technologies like HTML, CSS, JavaScript, and a modern UI framework like React. Problem-solving: You approach problems holistically, starting with a clear and accurate understanding of the context. You think critically about the implications of what you're building and how it will impact real people's lives. You can navigate ambiguity flawlessly, decompose complex problems into clean solutions, while also balancing the business impact of what you’re building. Empathetic communication and collaboration: You communicate nuanced ideas clearly, whether you're explaining technical decisions in writing or brainstorming in real time. In disagreements, you engage thoughtfully with other perspectives and compromise when needed. You enjoy collaborating with both fellow engineers and cross-functional partners. You are a lifelong learner and invest in both your own growth and the growth, learning, and development of your teammates. Impact-orientation and user focus: You care about business impact and prioritize projects accordingly. You understand the balance between craft, speed, and the bottom line. You think critically about the implications of what you're building, and how it shapes real people's lives. You understand that reach comes with responsibility for our impact—good and bad. Work isn't a solo endeavor for you, and you enjoy collaborating cross-functionally to accomplish shared goals. Nice to Haves: You have extensive experience building AI products using LLMs, embeddings and other ML technologies. You're proficient with any part of our technology stack: React, TypeScript, Node.js, and Postgres. You have experience driving teams toward shared goals and can balance business priorities with individuals’ strengths, areas of interest, and career development goals. You've heard of computing pioneers like Ada Lovelace, Douglas Engelbart, Alan Kay, and others—and understand why we're big fans of their work. You have interests outside of technology, such as in art, history, or social sciences. We hire talented and passionate people from a variety of backgrounds because we want our global employee base to represent the wide diversity of our customers. If you’re excited about a role but your past experience doesn’t align perfectly with every bullet point listed in the job description, we still encourage you to apply. If you’re a builder at heart, share our company values, and enthusiastic about making software toolmaking ubiquitous, we want to hear from you. Notion is proud to be an equal opportunity employer. We do not discriminate in hiring or any employment decision based on race, color, religion, national origin, age, sex (including pregnancy, childbirth, or related medical conditions), marital status, ancestry, physical or mental disability, genetic information, veteran status, gender identity or expression, sexual orientation, or other applicable legally protected characteristic. Notion considers qualified applicants with criminal histories, consistent with applicable federal, state and local law. Notion is also committed to providing reasonable accommodations for qualified individuals with disabilities and disabled veterans in our job application procedures. If you need assistance or an accommodation due to a disability, please let your recruiter know. Notion is committed to providing highly competitive cash compensation, equity, and benefits. The compensation offered for this role will be based on multiple factors such as location, the role’s scope and complexity, and the candidate’s experience and expertise, and may vary from the range provided below. For roles based in San Francisco, the estimated base salary range for this role is $150,000 - $280,000 per year.\n", "#LI-Onsite\n", "Apply for this job*indicates a required field\n", "First Name*Last Name*Email*Phone*Resume/CV*Attach\n", "AttachDropboxGoogle DriveEnter manuallyEnter manuallyAccepted file types: pdf, doc, docx, txt, rtf\n", "Starting August 1st 2022, employees across the globe will work and collaborate together in our offices for two Anchor Days each week. The other three days are meant to be flexible; the offices will be open and everyone’s encouraged to come in, but you can also work from home as well.\n", "Notion will consider requests for accommodations to this policy. When requested, Notion will provide a reasonable accommodation for physical or mental disabilities, or other reasons recognized by applicable law.\n", "Please confirm you have read and understand our return to office policy.*Select...\n", "Will you now or in the future require Notion to sponsor an immigration case in order to employ you? \n", "Select...\n", "Why do you want to work at Notion?*LinkedIn ProfileWebsite or Portfolio\n", "How did you hear about this opportunity? (select all that apply) Select...\n", "Voluntary Self-Identification\n", "For government reporting purposes, we ask candidates to respond to the below self-identification survey.\n", "Completion of the form is entirely voluntary, and we hope that you will choose to do so. Your answer is confidential. No one who makes hiring decisions will see it. Your decision to complete the form and your answer will not harm you in any way. If you want to learn more about the law or this form, visit the U.S. Department of Labor’s Office of Federal Contract Compliance Programs (OFCCP) website at www.dol.gov/ofccp.\n", "How do you know if you have a disability?\n", "A disability is a condition that substantially limits one or more of your “major life activities.” If you have or have ever had such a condition, you are a person with a disability. Disabilities include, but are not limited to:\n", "Alcohol or other substance use disorder (not currently using drugs illegally)\n", "Autoimmune disorder, for example, lupus, fibromyalgia, rheumatoid arthritis, HIV/AIDS\n", "Blind or low vision\n", "Cancer (past or present)\n", "Cardiovascular or heart disease\n", "Celiac disease\n", "Cerebral palsy\n", "Deaf or serious difficulty hearing\n", "Diabetes\n", "Disfigurement, for example, disfigurement caused by burns, wounds, accidents, or congenital disorders\n", "Epilepsy or other seizure disorder\n", "Gastrointestinal disorders, for example, Crohn's Disease, irritable bowel syndrome\n", "Intellectual or developmental disability\n", "Mental health conditions, for example, depression, bipolar disorder, anxiety disorder, schizophrenia, PTSD\n", "Missing limbs or partially missing limbs\n", "Mobility impairment, benefiting from the use of a wheelchair, scooter, walker, leg brace(s) and/or other supports\n", "Nervous system condition, for example, migraine headaches, Parkinson’s disease, multiple sclerosis (MS)\n", "Neurodivergence, for example, attention-deficit/hyperactivity disorder (ADHD), autism spectrum disorder, dyslexia, dyspraxia, other learning disabilities\n", "Partial or complete paralysis (any cause)\n", "Pulmonary or respiratory conditions, for example, tuberculosis, asthma, emphysema\n", "Short stature (dwarfism)\n", "Traumatic brain injury\n", "Disability StatusSelect...\n", "PUBLIC BURDEN STATEMENT: According to the Paperwork Reduction Act of 1995 no persons are required to respond to a collection of information unless such collection displays a valid OMB control number. This survey should take about 5 minutes to complete.\n", "Submit applicationPowered byGreenhouseRead our Privacy Policy\n", "```\n" ] } ] }, { "cell_type": "code", "source": [ "from langchain_core.output_parsers import JsonOutputParser\n", "\n", "output_parser = JsonOutputParser()\n", "json_response = output_parser.parse(response.content)\n", "print(json_response)\n", "type(json_response)" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "5XDOZXtYtpjk", "outputId": "da0c8c7a-0f5d-4219-8913-1c7462b43fb1" }, "execution_count": 61, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "{'role': 'AI Product Engineer', 'experience': {'years': 0, 'education': {'degrees': []}, 'training': []}, 'skills': ['Expertise building and prototyping', 'Shipping quality user interfaces', 'Problem-solving', 'Empathetic communication and collaboration', 'Impact-orientation and user focus', 'Nice to Haves: Extensive experience building AI products using LLMs, embeddings and other ML technologies, Proficient with React, TypeScript, Node.js, and Postgres, Experience driving teams toward shared goals and balancing business priorities with individuals’ strengths, areas of interest, and career development goals'], 'description': \"We're on a mission to make it possible for every person, team, and company to be able to tailor their software to solve any problem and take on any challenge. Computers may be our most powerful tools, but most of us can't build or modify the software we use on them every day. At Notion, we want to change this with focus, design, and craft. We've been working on this together since 2016, and have customers like Pixar, Mitsubishi, Figma, Plaid, Match Group, and thousands more on this journey with us. Today, we're growing fast and excited for new teammates to join us who are the best at what they do. We're passionate about building a company as diverse and creative as the millions of people Notion reaches worldwide. Notion is an in-person company, and currently requires its employees to come to the office for two Anchor Days (Mondays & Thursdays) and requests that employees spend the majority of their week in the office (including a third day). About The Role: We are looking for an AI Product Engineer to join our small but nimble AI team whose mission is to make Notion an AI-powered product. As an AI Product Engineer, you will work on developing and implementing AI-powered products, incorporating large language models (LLMs), embeddings, and other AI technologies into Notion’s product. What you’ll achieve: Work with the team to prototype and experiment with new AI features Productionize and launch new AI technology integrations into Notion’s core product Collaborate with cross-functional teams to deliver product features on time Stay up-to-date with the latest AI technologies and trends. Skills You'll Need to Bring: Expertise building and prototyping: You understand how parts of a system fit together, from the user interface to the data model. You are familiar with relational database systems like Postgres or MySQL, and have experience building products from ground up. Shipping quality user interfaces: You partner closely with product and design to craft beautiful user experiences for large audiences, leveraging web technologies like HTML, CSS, JavaScript, and a modern UI framework like React. Problem-solving: You approach problems holistically, starting with a clear and accurate understanding of the context. You think critically about the implications of what you're building and how it will impact real people's lives. You can navigate ambiguity flawlessly, decompose complex problems into clean solutions, while also balancing the business impact of what you’re building. Empathetic communication and collaboration: You communicate nuanced ideas clearly, whether you're explaining technical decisions in writing or brainstorming in real time. In disagreements, you engage thoughtfully with other perspectives and compromise when needed. You enjoy collaborating with both fellow engineers and cross-functional partners. You are a lifelong learner and invest in both your own growth and the growth, learning, and development of your teammates. Impact-orientation and user focus: You care about business impact and prioritize projects accordingly. You understand the balance between craft, speed, and the bottom line. You think critically about the implications of what you're building, and how it shapes real people's lives. You understand that reach comes with responsibility for our impact—good and bad. Work isn't a solo endeavor for you, and you enjoy collaborating cross-functionally to accomplish shared goals. Nice to Haves: You have extensive experience building AI products using LLMs, embeddings and other ML technologies. You're proficient with any part of our technology stack: React, TypeScript, Node.js, and Postgres. You have experience driving teams toward shared goals and can balance business priorities with individuals’ strengths, areas of interest, and career development goals. You've heard of computing pioneers like Ada Lovelace, Douglas Engelbart, Alan Kay, and others—and understand why we're big fans of their work. You have interests outside of technology, such as in art, history, or social sciences. We hire talented and passionate people from a variety of backgrounds because we want our global employee base to represent the wide diversity of our customers. If you’re excited about a role but your past experience doesn’t align perfectly with every bullet point listed in the job description, we still encourage you to apply. If you’re a builder at heart, share our company values, and enthusiastic about making software toolmaking ubiquitous, we want to hear from you. Notion is proud to be an equal opportunity employer. We do not discriminate in hiring or any employment decision based on race, color, religion, national origin, age, sex (including pregnancy, childbirth, or related medical conditions), marital status, ancestry, physical or mental disability, genetic information, veteran status, gender identity or expression, sexual orientation, or other applicable legally protected characteristic. Notion considers qualified applicants with criminal histories, consistent with applicable federal, state and local law. Notion is also committed to providing reasonable accommodations for qualified individuals with disabilities and disabled veterans in our job application procedures. If you need assistance or an accommodation due to a disability, please let your recruiter know. Notion is committed to providing highly competitive cash compensation, equity, and benefits. The compensation offered for this role will be based on multiple factors such as location, the role’s scope and complexity, and the candidate’s experience and expertise, and may vary from the range provided below. For roles based in San Francisco, the estimated base salary range for this role is $150,000 - $280,000 per year.\\n#LI-Onsite\\nApply for this job*indicates a required field\\nFirst Name*Last Name*Email*Phone*Resume/CV*Attach\\nAttachDropboxGoogle DriveEnter manuallyEnter manuallyAccepted file types: pdf, doc, docx, txt, rtf\\nStarting August 1st 2022, employees across the globe will work and collaborate together in our offices for two Anchor Days each week. The other three days are meant to be flexible; the offices will be open and everyone’s encouraged to come in, but you can also work from home as well.\\nNotion will consider requests for accommodations to this policy. When requested, Notion will provide a reasonable accommodation for physical or mental disabilities, or other reasons recognized by applicable law.\\nPlease confirm you have read and understand our return to office policy.*Select...\\nWill you now or in the future require Notion to sponsor an immigration case in order to employ you? \\nSelect...\\nWhy do you want to work at Notion?*LinkedIn ProfileWebsite or Portfolio\\nHow did you hear about this opportunity? (select all that apply) Select...\\nVoluntary Self-Identification\\nFor government reporting purposes, we ask candidates to respond to the below self-identification survey.\\nCompletion of the form is entirely voluntary, and we hope that you will choose to do so. Your answer is confidential. No one who makes hiring decisions will see it. Your decision to complete the form and your answer will not harm you in any way. If you want to learn more about the law or this form, visit the U.S. Department of Labor’s Office of Federal Contract Compliance Programs (OFCCP) website at www.dol.gov/ofccp.\\nHow do you know if you have a disability?\\nA disability is a condition that substantially limits one or more of your “major life activities.” If you have or have ever had such a condition, you are a person with a disability. Disabilities include, but are not limited to:\\nAlcohol or other substance use disorder (not currently using drugs illegally)\\nAutoimmune disorder, for example, lupus, fibromyalgia, rheumatoid arthritis, HIV/AIDS\\nBlind or low vision\\nCancer (past or present)\\nCardiovascular or heart disease\\nCeliac disease\\nCerebral palsy\\nDeaf or serious difficulty hearing\\nDiabetes\\nDisfigurement, for example, disfigurement caused by burns, wounds, accidents, or congenital disorders\\nEpilepsy or other seizure disorder\\nGastrointestinal disorders, for example, Crohn's Disease, irritable bowel syndrome\\nIntellectual or developmental disability\\nMental health conditions, for example, depression, bipolar disorder, anxiety disorder, schizophrenia, PTSD\\nMissing limbs or partially missing limbs\\nMobility impairment, benefiting from the use of a wheelchair, scooter, walker, leg brace(s) and/or other supports\\nNervous system condition, for example, migraine headaches, Parkinson’s disease, multiple sclerosis (MS)\\nNeurodivergence, for example, attention-deficit/hyperactivity disorder (ADHD), autism spectrum disorder, dyslexia, dyspraxia, other learning disabilities\\nPartial or complete paralysis (any cause)\\nPulmonary or respiratory conditions, for example, tuberculosis, asthma, emphysema\\nShort stature (dwarfism)\\nTraumatic brain injury\\nDisability StatusSelect...\\nPUBLIC BURDEN STATEMENT: According to the Paperwork Reduction Act of 1995 no persons are required to respond to a collection of information unless such collection displays a valid OMB control number. This survey should take about 5 minutes to complete.\\nSubmit applicationPowered byGreenhouseRead our Privacy Policy\"}\n" ] }, { "output_type": "execute_result", "data": { "text/plain": [ "dict" ] }, "metadata": {}, "execution_count": 61 } ] }, { "cell_type": "code", "source": [ "import pandas as pd\n", "\n", "df = pd.read_csv(\"/content/techstack-portfolio.csv\")\n", "df.head()\n", "df.info()" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "5m9Dk-mquwbc", "outputId": "45f5d683-7b00-462b-aff8-cb1585513f79" }, "execution_count": 48, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "\n", "RangeIndex: 20 entries, 0 to 19\n", "Data columns (total 2 columns):\n", " # Column Non-Null Count Dtype \n", "--- ------ -------------- ----- \n", " 0 Techstack 20 non-null object\n", " 1 Links 20 non-null object\n", "dtypes: object(2)\n", "memory usage: 448.0+ bytes\n" ] } ] }, { "cell_type": "code", "source": [ "import chromadb\n", "import uuid\n", "\n", "client = chromadb.PersistentClient(\"my-vectorstore\") # persistentclient -- create a folder and store records in it\n", "collection = client.get_or_create_collection(\"my_collection\")\n", "\n", "if not collection.count():\n", " for _, row in df.iterrows():\n", " collection.add(documents = row[\"Techstack\"], metadatas = {\"links\": row[\"Links\"]}, ids = [str(uuid.uuid4())])\n" ], "metadata": { "id": "9CdGU_fAROj8" }, "execution_count": 62, "outputs": [] }, { "cell_type": "code", "source": [ "job = json_response\n", "job['skills']" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "w545dkcXxkz1", "outputId": "e27f3b8d-85d7-4534-e7f9-6a7377fb8dcf" }, "execution_count": 64, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "['Expertise building and prototyping',\n", " 'Shipping quality user interfaces',\n", " 'Problem-solving',\n", " 'Empathetic communication and collaboration',\n", " 'Impact-orientation and user focus',\n", " 'Nice to Haves: Extensive experience building AI products using LLMs, embeddings and other ML technologies, Proficient with React, TypeScript, Node.js, and Postgres, Experience driving teams toward shared goals and balancing business priorities with individuals’ strengths, areas of interest, and career development goals']" ] }, "metadata": {}, "execution_count": 64 } ] }, { "cell_type": "code", "source": [ "links = collection.query(query_texts = job['skills'], n_results = 2).get(\"metadatas\", [])\n", "links" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "0YegZ8bu06Fw", "outputId": "6b968e3e-e65a-43af-a7fd-69d343c37d7b" }, "execution_count": 75, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "[[{'links': 'https://example.com/ml-python-portfolio'},\n", " {'links': 'https://example.com/devops-portfolio'}],\n", " [{'links': 'https://example.com/full-stack-js-portfolio'},\n", " {'links': 'https://example.com/kotlin-backend-portfolio'}],\n", " [{'links': 'https://example.com/ml-python-portfolio'},\n", " {'links': 'https://example.com/magento-portfolio'}],\n", " [{'links': 'https://example.com/flutter-portfolio'},\n", " {'links': 'https://example.com/android-portfolio'}],\n", " [{'links': 'https://example.com/android-portfolio'},\n", " {'links': 'https://example.com/ios-ar-portfolio'}],\n", " [{'links': 'https://example.com/ml-python-portfolio'},\n", " {'links': 'https://example.com/vue-portfolio'}]]" ] }, "metadata": {}, "execution_count": 75 } ] }, { "cell_type": "code", "source": [ "prompt_email = PromptTemplate.from_template(\n", " \"\"\"\n", " ### JOB DESCRIPTION:\n", " {job_description}\n", "\n", " ### INSTRUCTION:\n", " You are [Candidate Name], a skilled professional seeking opportunities in [Industry/Field]. Your expertise includes [List of Relevant Skills/Technologies].\n", " You have a strong passion for [relevant interests related to the job or industry], and you are eager to contribute to innovative projects.\n", "\n", " Your job is to write a cold email to the hiring manager or recruiter at the company regarding the job mentioned above.\n", " Highlight your qualifications and explain how your skills align with the company's needs.\n", " Also add the most relevant ones from the following links to showcase your relevant projects. There should be project link with description for atmost 4 skills required by company: {link_list}\n", " Make sure to convey your enthusiasm for the opportunity and express your interest in discussing how you can add value to their team.\n", "\n", " ### EMAIL (NO PREAMBLE):\n", " \"\"\"\n", ")\n" ], "metadata": { "id": "iJWJJUol2D3U" }, "execution_count": 86, "outputs": [] }, { "cell_type": "code", "source": [ "chain_email = prompt_email | llm\n", "res = chain_email.invoke({\"job_description\": str(job), \"link_list\": links})\n", "print(res.content)" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "7F01pFoA2eB3", "outputId": "431b424e-423b-4972-faf7-49c3e0c10027" }, "execution_count": 87, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Subject: Application for AI Product Engineer Role at Notion\n", "\n", "Dear [Hiring Manager's Name],\n", "\n", "I am excited to apply for the AI Product Engineer position at Notion, a company that shares my passion for innovation and making software toolmaking ubiquitous. With my expertise in building and prototyping, shipping quality user interfaces, and problem-solving, I am confident that I can contribute to the development of cutting-edge AI-powered products.\n", "\n", "As a seasoned professional with extensive experience in building AI products using large language models (LLMs), embeddings, and other ML technologies, I am well-equipped to tackle the challenges of this role. My proficiency in React, TypeScript, Node.js, and Postgres will enable me to efficiently prototype and experiment with new AI features, while my experience driving teams toward shared goals and balancing business priorities with individuals' strengths, areas of interest, and career development goals will ensure seamless collaboration with cross-functional teams.\n", "\n", "I am particularly drawn to Notion's mission to make AI-powered products accessible to everyone, and I am impressed by the company's commitment to diversity and creativity. My background in art, history, and social sciences has also instilled in me a passion for understanding the impact of technology on society, and I believe that my unique perspective will bring a valuable asset to the team.\n", "\n", "I have attached my resume and a link to my portfolio, which showcases my experience in building AI products, shipping quality user interfaces, and problem-solving. I would be thrilled to discuss my qualifications further and explain in greater detail why I am the ideal candidate for this role.\n", "\n", "Thank you for considering my application. I look forward to the opportunity to contribute to Notion's mission and discuss how I can add value to the team.\n", "\n", "Best regards,\n", "\n", "[Candidate Name]\n", "\n", "Attachments:\n", "\n", "* Resume\n", "* Portfolio (with links to relevant projects)\n" ] } ] }, { "cell_type": "code", "source": [], "metadata": { "id": "qS50C1jp4Li0" }, "execution_count": null, "outputs": [] } ] }