# findprob
A CLI to classify and search for problems using LLMs
## Installation
1. Install the package: `pip install findprob`
2. (Optional) Install autocompletion: `findprob --install-completion`
3. Create an [OpenAI](https://platform.openai.com/signup) account and generate a new API key.
4. Create a [LangChain](https://smith.langchain.com/) account and generate a new API key and project.
5. Export the environment variables in your terminal:
```sh
LANGCHAIN_TRACING_V2=true
LANGCHAIN_ENDPOINT="https://api.smith.langchain.com"
LANGCHAIN_API_KEY=<YOUR API KEY HERE>
LANGCHAIN_PROJECT=<YOUR PROJECT NAME HERE>
OPENAI_API_KEY=<YOUR API KEY HERE>
```
## Usage
See the [official docs](https://phrdang.github.io/findprob/) or run `findprob --help` for more information.
## Credits
A research project for CS 194-271 at UC Berkeley (Fall 2024) created by:
- Rebecca Dang (rdang [at] berkeley [dot] edu)
- Jessica Lin (linjessica [at] berkeley [dot] edu)
- Samantha Huang (samanthahuang [at] berkeley [dot] edu)
Advised by:
- Professor Gireeja Ranade (ranade [at] eecs [dot] berkeley [dot] edu)
- Professor Narges Norouzi (norouzi [at] berkeley [dot] edu)
Raw data
{
"_id": null,
"home_page": null,
"name": "findprob",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.11",
"maintainer_email": "Rebecca Dang <rdang@berkeley.edu>, Jessica Lin <linjessica@berkeley.edu>, Samantha Huang <samanthahuang@berkeley.edu>",
"keywords": "AI, LLM, classify problems, edtech, education, find problems, findprob, problems, search problems",
"author": null,
"author_email": "Rebecca Dang <rdang@berkeley.edu>, Jessica Lin <linjessica@berkeley.edu>, Samantha Huang <samanthahuang@berkeley.edu>",
"download_url": "https://files.pythonhosted.org/packages/82/b1/696ec1176816a48392601147eb923e0767855953c02f9851bb1a51a38bdc/findprob-0.2.tar.gz",
"platform": null,
"description": "# findprob\n\nA CLI to classify and search for problems using LLMs\n\n## Installation\n\n1. Install the package: `pip install findprob`\n2. (Optional) Install autocompletion: `findprob --install-completion`\n3. Create an [OpenAI](https://platform.openai.com/signup) account and generate a new API key.\n4. Create a [LangChain](https://smith.langchain.com/) account and generate a new API key and project.\n5. Export the environment variables in your terminal:\n```sh\nLANGCHAIN_TRACING_V2=true\nLANGCHAIN_ENDPOINT=\"https://api.smith.langchain.com\"\nLANGCHAIN_API_KEY=<YOUR API KEY HERE>\nLANGCHAIN_PROJECT=<YOUR PROJECT NAME HERE>\n\nOPENAI_API_KEY=<YOUR API KEY HERE>\n```\n\n## Usage\n\nSee the [official docs](https://phrdang.github.io/findprob/) or run `findprob --help` for more information.\n\n## Credits\n\nA research project for CS 194-271 at UC Berkeley (Fall 2024) created by:\n\n- Rebecca Dang (rdang [at] berkeley [dot] edu)\n- Jessica Lin (linjessica [at] berkeley [dot] edu)\n- Samantha Huang (samanthahuang [at] berkeley [dot] edu)\n\nAdvised by:\n\n- Professor Gireeja Ranade (ranade [at] eecs [dot] berkeley [dot] edu)\n- Professor Narges Norouzi (norouzi [at] berkeley [dot] edu)\n",
"bugtrack_url": null,
"license": null,
"summary": "A CLI that lets you classify and search for problems by topic using an LLM",
"version": "0.2",
"project_urls": {
"Homepage": "https://phrdang.github.io/findprob/",
"Issues": "https://github.com/phrdang/findprob/issues",
"Repository": "https://github.com/phrdang/findprob.git"
},
"split_keywords": [
"ai",
" llm",
" classify problems",
" edtech",
" education",
" find problems",
" findprob",
" problems",
" search problems"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "996f24c61fdd7b5638533b0b4dcf798c8093a3d1428e0d8674b2f86f28d407e1",
"md5": "c7e3367965493c768f79e460a659e6f8",
"sha256": "60e09d0c2922e31713193e1813af056acdbfe98836403cc864ea2dbed049c822"
},
"downloads": -1,
"filename": "findprob-0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c7e3367965493c768f79e460a659e6f8",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.11",
"size": 8820,
"upload_time": "2024-12-16T02:22:35",
"upload_time_iso_8601": "2024-12-16T02:22:35.062594Z",
"url": "https://files.pythonhosted.org/packages/99/6f/24c61fdd7b5638533b0b4dcf798c8093a3d1428e0d8674b2f86f28d407e1/findprob-0.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "82b1696ec1176816a48392601147eb923e0767855953c02f9851bb1a51a38bdc",
"md5": "5d36db24a026c494328900efa07398b7",
"sha256": "f2aecbe4836f84992df632194130f2393a4bebbd3571f2d64ae62767a5e75735"
},
"downloads": -1,
"filename": "findprob-0.2.tar.gz",
"has_sig": false,
"md5_digest": "5d36db24a026c494328900efa07398b7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.11",
"size": 7822247,
"upload_time": "2024-12-16T02:22:32",
"upload_time_iso_8601": "2024-12-16T02:22:32.026938Z",
"url": "https://files.pythonhosted.org/packages/82/b1/696ec1176816a48392601147eb923e0767855953c02f9851bb1a51a38bdc/findprob-0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-16 02:22:32",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "phrdang",
"github_project": "findprob",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "aiohappyeyeballs",
"specs": [
[
"==",
"2.4.4"
]
]
},
{
"name": "aiohttp",
"specs": [
[
"==",
"3.11.10"
]
]
},
{
"name": "aiosignal",
"specs": [
[
"==",
"1.3.2"
]
]
},
{
"name": "annotated-types",
"specs": [
[
"==",
"0.7.0"
]
]
},
{
"name": "anyio",
"specs": [
[
"==",
"4.7.0"
]
]
},
{
"name": "attrs",
"specs": [
[
"==",
"24.2.0"
]
]
},
{
"name": "beautifulsoup4",
"specs": [
[
"==",
"4.12.3"
]
]
},
{
"name": "bs4",
"specs": [
[
"==",
"0.0.2"
]
]
},
{
"name": "build",
"specs": [
[
"==",
"1.2.2.post1"
]
]
},
{
"name": "certifi",
"specs": [
[
"==",
"2024.8.30"
]
]
},
{
"name": "charset-normalizer",
"specs": [
[
"==",
"3.4.0"
]
]
},
{
"name": "click",
"specs": [
[
"==",
"8.1.7"
]
]
},
{
"name": "dataclasses-json",
"specs": [
[
"==",
"0.6.7"
]
]
},
{
"name": "distlib",
"specs": [
[
"==",
"0.3.9"
]
]
},
{
"name": "distro",
"specs": [
[
"==",
"1.9.0"
]
]
},
{
"name": "docutils",
"specs": [
[
"==",
"0.21.2"
]
]
},
{
"name": "filelock",
"specs": [
[
"==",
"3.16.1"
]
]
},
{
"name": "frozenlist",
"specs": [
[
"==",
"1.5.0"
]
]
},
{
"name": "h11",
"specs": [
[
"==",
"0.14.0"
]
]
},
{
"name": "hatch",
"specs": [
[
"==",
"1.13.0"
]
]
},
{
"name": "hatchling",
"specs": [
[
"==",
"1.26.3"
]
]
},
{
"name": "httpcore",
"specs": [
[
"==",
"1.0.7"
]
]
},
{
"name": "httpx",
"specs": [
[
"==",
"0.28.1"
]
]
},
{
"name": "httpx-sse",
"specs": [
[
"==",
"0.4.0"
]
]
},
{
"name": "hyperlink",
"specs": [
[
"==",
"21.0.0"
]
]
},
{
"name": "idna",
"specs": [
[
"==",
"3.10"
]
]
},
{
"name": "jaraco.classes",
"specs": [
[
"==",
"3.4.0"
]
]
},
{
"name": "jaraco.context",
"specs": [
[
"==",
"6.0.1"
]
]
},
{
"name": "jaraco.functools",
"specs": [
[
"==",
"4.1.0"
]
]
},
{
"name": "jiter",
"specs": [
[
"==",
"0.8.2"
]
]
},
{
"name": "jsonpatch",
"specs": [
[
"==",
"1.33"
]
]
},
{
"name": "jsonpointer",
"specs": [
[
"==",
"3.0.0"
]
]
},
{
"name": "keyring",
"specs": [
[
"==",
"25.5.0"
]
]
},
{
"name": "langchain",
"specs": [
[
"==",
"0.3.12"
]
]
},
{
"name": "langchain-community",
"specs": [
[
"==",
"0.3.12"
]
]
},
{
"name": "langchain-core",
"specs": [
[
"==",
"0.3.25"
]
]
},
{
"name": "langchain-openai",
"specs": [
[
"==",
"0.2.12"
]
]
},
{
"name": "langchain-text-splitters",
"specs": [
[
"==",
"0.3.3"
]
]
},
{
"name": "langsmith",
"specs": [
[
"==",
"0.2.3"
]
]
},
{
"name": "markdown-it-py",
"specs": [
[
"==",
"3.0.0"
]
]
},
{
"name": "marshmallow",
"specs": [
[
"==",
"3.23.1"
]
]
},
{
"name": "mdurl",
"specs": [
[
"==",
"0.1.2"
]
]
},
{
"name": "more-itertools",
"specs": [
[
"==",
"10.5.0"
]
]
},
{
"name": "multidict",
"specs": [
[
"==",
"6.1.0"
]
]
},
{
"name": "mypy-extensions",
"specs": [
[
"==",
"1.0.0"
]
]
},
{
"name": "nh3",
"specs": [
[
"==",
"0.2.19"
]
]
},
{
"name": "numpy",
"specs": [
[
"==",
"2.2.0"
]
]
},
{
"name": "openai",
"specs": [
[
"==",
"1.57.4"
]
]
},
{
"name": "orjson",
"specs": [
[
"==",
"3.10.12"
]
]
},
{
"name": "packaging",
"specs": [
[
"==",
"24.2"
]
]
},
{
"name": "pathspec",
"specs": [
[
"==",
"0.12.1"
]
]
},
{
"name": "pexpect",
"specs": [
[
"==",
"4.9.0"
]
]
},
{
"name": "pkginfo",
"specs": [
[
"==",
"1.12.0"
]
]
},
{
"name": "platformdirs",
"specs": [
[
"==",
"4.3.6"
]
]
},
{
"name": "pluggy",
"specs": [
[
"==",
"1.5.0"
]
]
},
{
"name": "propcache",
"specs": [
[
"==",
"0.2.1"
]
]
},
{
"name": "ptyprocess",
"specs": [
[
"==",
"0.7.0"
]
]
},
{
"name": "pydantic",
"specs": [
[
"==",
"2.10.3"
]
]
},
{
"name": "pydantic-settings",
"specs": [
[
"==",
"2.7.0"
]
]
},
{
"name": "pydantic_core",
"specs": [
[
"==",
"2.27.1"
]
]
},
{
"name": "Pygments",
"specs": [
[
"==",
"2.18.0"
]
]
},
{
"name": "pyproject_hooks",
"specs": [
[
"==",
"1.2.0"
]
]
},
{
"name": "python-dotenv",
"specs": [
[
"==",
"1.0.1"
]
]
},
{
"name": "PyYAML",
"specs": [
[
"==",
"6.0.2"
]
]
},
{
"name": "readme_renderer",
"specs": [
[
"==",
"44.0"
]
]
},
{
"name": "regex",
"specs": [
[
"==",
"2024.11.6"
]
]
},
{
"name": "requests",
"specs": [
[
"==",
"2.32.3"
]
]
},
{
"name": "requests-toolbelt",
"specs": [
[
"==",
"1.0.0"
]
]
},
{
"name": "rfc3986",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "rich",
"specs": [
[
"==",
"13.9.4"
]
]
},
{
"name": "shellingham",
"specs": [
[
"==",
"1.5.4"
]
]
},
{
"name": "sniffio",
"specs": [
[
"==",
"1.3.1"
]
]
},
{
"name": "soupsieve",
"specs": [
[
"==",
"2.6"
]
]
},
{
"name": "SQLAlchemy",
"specs": [
[
"==",
"2.0.36"
]
]
},
{
"name": "tenacity",
"specs": [
[
"==",
"9.0.0"
]
]
},
{
"name": "tiktoken",
"specs": [
[
"==",
"0.8.0"
]
]
},
{
"name": "tomli_w",
"specs": [
[
"==",
"1.1.0"
]
]
},
{
"name": "tomlkit",
"specs": [
[
"==",
"0.13.2"
]
]
},
{
"name": "tqdm",
"specs": [
[
"==",
"4.67.1"
]
]
},
{
"name": "trove-classifiers",
"specs": [
[
"==",
"2024.10.21.16"
]
]
},
{
"name": "twine",
"specs": [
[
"==",
"6.0.1"
]
]
},
{
"name": "typer",
"specs": [
[
"==",
"0.15.1"
]
]
},
{
"name": "typing-inspect",
"specs": [
[
"==",
"0.9.0"
]
]
},
{
"name": "typing_extensions",
"specs": [
[
"==",
"4.12.2"
]
]
},
{
"name": "urllib3",
"specs": [
[
"==",
"2.2.3"
]
]
},
{
"name": "userpath",
"specs": [
[
"==",
"1.9.2"
]
]
},
{
"name": "uv",
"specs": [
[
"==",
"0.5.8"
]
]
},
{
"name": "virtualenv",
"specs": [
[
"==",
"20.28.0"
]
]
},
{
"name": "yarl",
"specs": [
[
"==",
"1.18.3"
]
]
},
{
"name": "zstandard",
"specs": [
[
"==",
"0.23.0"
]
]
}
],
"lcname": "findprob"
}