{"id":37074106,"url":"https://github.com/chigwell/tech-summary","last_synced_at":"2026-01-14T08:43:38.788Z","repository":{"id":329838285,"uuid":"1120783490","full_name":"chigwell/tech-summary","owner":"chigwell","description":"tech-summary processes text to extract structured summaries of technical concepts, ensuring consistent and reliable output for developers, educators, and writers.","archived":false,"fork":false,"pushed_at":"2025-12-21T23:43:23.000Z","size":3,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-12-23T10:41:31.981Z","etag":null,"topics":["automation","comparison-of-features","concise-explanations","consistent-output","data-extraction","developer-tools","educational-aids","formalization","manual-reformatting-avoidance","pattern-matching","programming-languages","reliable-formatting","structured-summaries","technical-concepts"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/tech-summary/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chigwell.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-12-21T23:43:16.000Z","updated_at":"2025-12-21T23:43:37.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/chigwell/tech-summary","commit_stats":null,"previous_names":["chigwell/tech-summary"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/chigwell/tech-summary","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chigwell%2Ftech-summary","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chigwell%2Ftech-summary/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chigwell%2Ftech-summary/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chigwell%2Ftech-summary/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chigwell","download_url":"https://codeload.github.com/chigwell/tech-summary/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chigwell%2Ftech-summary/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28414692,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T08:38:59.149Z","status":"ssl_error","status_checked_at":"2026-01-14T08:38:43.588Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","comparison-of-features","concise-explanations","consistent-output","data-extraction","developer-tools","educational-aids","formalization","manual-reformatting-avoidance","pattern-matching","programming-languages","reliable-formatting","structured-summaries","technical-concepts"],"created_at":"2026-01-14T08:43:38.051Z","updated_at":"2026-01-14T08:43:38.776Z","avatar_url":"https://github.com/chigwell.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# tech-summary\n[![PyPI version](https://badge.fury.io/py/tech-summary.svg)](https://badge.fury.io/py/tech-summary)\n[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)\n[![Downloads](https://static.pepy.tech/badge/tech-summary)](https://pepy.tech/project/tech-summary)\n[![LinkedIn](https://img.shields.io/badge/LinkedIn-blue)](https://www.linkedin.com/in/eugene-evstafev-716669181/)\n\nPackage to extract structured summaries of technical concepts from text input.\n\n## Overview\n\nThis package uses pattern matching to ensure output consistency and reliability, avoiding unstructured or ambiguous responses. It's useful for developers, educators, or technical writers who need concise, formatted explanations without manual reformatting.\n\n## Installation\n\n```bash\npip install tech_summary\n```\n\n## Usage\n\n```python\nfrom tech_summary import tech_summary\n\nuser_input = \"Compare garbage collection and move semantics in programming languages.\"\nresponse = tech_summary(user_input)\nprint(response)\n```\n\nYou can also pass a LangChain LLM instance to use:\n\n```python\nfrom langchain_llm7 import ChatLLM7\nfrom tech_summary import tech_summary\n\nllm = ChatLLM7()\nresponse = tech_summary(user_input, llm=llm)\nprint(response)\n```\n\nYou can also use another LLM instance (e.g. OpenAI, Anthropic, Google Generative AI) by passing your own instance:\n\n```python\nfrom langchain_openai import ChatOpenAI\nfrom tech_summary import tech_summary\n\nllm = ChatOpenAI()\nresponse = tech_summary(user_input, llm=llm)\nprint(response)\n\nfrom langchain_anthropic import ChatAnthropic\nfrom tech_summary import tech_summary\n\nllm = ChatAnthropic()\nresponse = tech_summary(user_input, llm=llm)\nprint(response)\n\nfrom langchain_google_genai import ChatGoogleGenerativeAI\nfrom tech_summary import tech_summary\n\nllm = ChatGoogleGenerativeAI()\nresponse = tech_summary(user_input, llm=llm)\nprint(response)\n```\n\n## Configuration\n\nYou can configure the LLM7 API key by setting the `LLM7_API_KEY` environment variable or passing it directly to the `tech_summary` function:\n\n```python\ntech_summary(user_input, api_key=\"your_api_key\")\n```\n\nIf you haven't registered for an API key, you can get one for free at https://token.llm7.io/.\n\n## GitHub\n\nRaise issues at https://github.tech-summary.\n\n## Author\n\nEugene Evstafev\nhi@euegne.plus\n\n## Changelog\n\nThis package is under development. See GitHub for updates.\n\n## Acknowledgments\n\nThis package uses ChatLLM7 (https://pypi.org/project/langchain-llm7/) by default.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchigwell%2Ftech-summary","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchigwell%2Ftech-summary","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchigwell%2Ftech-summary/lists"}