{"id":18801176,"url":"https://github.com/logpai/lilac","last_synced_at":"2025-04-13T17:31:55.120Z","repository":{"id":220242359,"uuid":"751132926","full_name":"logpai/LILAC","owner":"logpai","description":"LILAC: Log Parsing using LLMs with Adaptive Parsing Cache [FSE'24]","archived":false,"fork":false,"pushed_at":"2024-02-03T17:46:03.000Z","size":608,"stargazers_count":42,"open_issues_count":0,"forks_count":5,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-03-27T08:58:13.150Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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/logpai.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}},"created_at":"2024-02-01T01:48:52.000Z","updated_at":"2025-03-17T18:08:24.000Z","dependencies_parsed_at":"2024-02-03T18:38:51.656Z","dependency_job_id":null,"html_url":"https://github.com/logpai/LILAC","commit_stats":null,"previous_names":["logpai/lilac"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/logpai%2FLILAC","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/logpai%2FLILAC/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/logpai%2FLILAC/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/logpai%2FLILAC/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/logpai","download_url":"https://codeload.github.com/logpai/LILAC/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248752454,"owners_count":21156094,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-11-07T22:22:41.643Z","updated_at":"2025-04-13T17:31:50.109Z","avatar_url":"https://github.com/logpai.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LILAC: Log Parsing using LLMs with Adaptive Parsing Cache\n\nThis is the replication package for [FSE24] [\"LILAC: Log Parsing using LLMs with Adaptive Parsing Cache\"](https://arxiv.org/abs/2310.01796).\n\nIn this paper, we propose LILAC, the first practical LLM-based log parsing framework.\nLILAC consists of two main components: the ICL-enhanced Parser and the adaptive parsing cache.\n\n![The overall framework of LILAC](figures/framework.png)\n\nThe detailed parsing time can be found in [detailed parsing time for RQ4](figures/parsing_time.png).\n\nIf you find our paper benefit your research, please kindly cite our related paper:\n\n- Zhihan Jiang, Jinyang Liu, Zhuangbin Chen, Yichen Li, Junjie Huang, Yintong Huo, Pinjia He, Jiazhen Gu, Michael R. Lyu. [LILAC: Log Parsing using LLMs with Adaptive Parsing Cache](https://arxiv.org/abs/2310.01796) FSE, 2024. \n\n## Repository Organization \n\n```\n├── full_dataset/ # Please download and unzip full datasets into this directory\n│   └── sampled_examples # Our saved sampled candidates\n├── benchmark/\n│   ├── evaluation/ # the evaluation code of LILAC\n│   └── logparser/ # the implementation code of LILAC\n├── result/\n│   └── ...... # contains the saved evaluation files\n├── sampling/ # the implementation of candidate sampling algorithms\n│   ├── logppt_sampling.py # the sampling algorithm of LogPPT\n│   └── LILAC_sampling.py # the sampling algorithm of LILAC\n├── requirements.txt\n├── openai_key.txt # the OpenAI api address and key\n└── README.md\n```\n\n\n## Quick Start\n\n### Datasets\n\nPlease first download the large-scale datasets for log parsing in LogPub from [Zenodo](https://zenodo.org/record/8275861) and unzip these datasets into the directory of `full_dataset`.\n\n###  Installation\n\n1. Install ```python \u003e= 3.8```\n2. ```pip install -r requirements.txt```\n\n\n### Execution\n\n- Candidate Sampling (optional)\n\n    We have provided the saved sampled candidate logs for reproducing.\n\n    One can also delete the `full_dataset/sampled_examples` and execute the LILAC's sampling algorithm as follows:\n\n    ```bash\n    cd sampling/\n    python LILAC_sampling.py\n    ```\n\n- Online Log Parsing\n\n    Please first add an OpenAI API key (`sk-xxxx`) into the second line of openai_key.txt.\n\n    We provide a one-click script to run LILAC for online log parsing.\n\n    ```bash\n    ./online_parsing.sh\n    ```\n\n    One can also go to `benchmark/evaluation` and execute:\n\n    ```bash\n    python LILAC_eval.py --shot [candidates] --example_size [demonstrations] --model [model]\n    ```\n\nThe parsed results and evaluation results will be saved in the `result/` directory.\n\nWe have provided the saved evaluation metric files of LILAC with different settings in the directory of `result/`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flogpai%2Flilac","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flogpai%2Flilac","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flogpai%2Flilac/lists"}