from llama_cpp import Llama # INSTRUCTIONS: Replace the JSON below with your material's properties # Common data sources: materialsproject.org, DFT calculations, experimental databases JSON_INPUT = """ { "material_id": "mp-8062", "formula": "SiC", "elements": [ "Si", "C" ], "spacegroup": "P63mc", "band_gap": 3.26, "formation_energy_per_atom": -0.73, "density": 3.21, "volume": 41.2, "nsites": 8, "is_stable": true, "elastic_modulus": 448, "bulk_modulus": 220, "thermal_expansion": 4.2e-06, "electron_affinity": 4.0, "ionization_energy": 6.7, "crystal_system": "Hexagonal", "magnetic_property": "Non-magnetic", "thermal_conductivity": 490, "specific_heat": 0.69, "is_superconductor": false, "band_gap_type": "Indirect" } """ model_path = "./" # Path to the directory containing your model weight files llm = Llama( model_path=model_path, n_gpu_layers=29, n_ctx=10000, n_threads=4 ) topic = JSON_INPUT.strip() prompt = f"USER: {topic}\nASSISTANT:" output = llm( prompt, max_tokens=3000, temperature=0.7, top_p=0.9, repeat_penalty=1.1 ) result = output.get("choices", [{}])[0].get("text", "").strip() print(result)